2016-03-29 9 views
0

にFirebaseデータを変換すると、これは私のFirebaseデータがどのように見えるかです:スウィフト配列

[ { 
    "adress" : "Högåsstigen 10 332 33 Gislaved", 
    "helg" : "18:00-02:00", 
    "latitude" : 57.2985, 
    "longitude" : 13.54326, 
    "namn" : "Restaurang Åsen", 
    "outlet" : 0, 
    "phone" : "0371-123456", 
    "star" : 0, 
    "tag" : "Restaurang", 
    "vardag" : "10:00-19:30" 
}, { 
    "adress" : "Högåsstigen 12 332 33 Gislaved", 
    "helg" : "18:00-02:00", 
    "latitude" : 57.9985, 
    "longitude" : 13.94326, 
    "namn" : "Kalles ställe", 
    "outlet" : 0, 
    "phone" : "0371-123456", 
    "star" : 2, 
    "tag" : "Restaurang", 
    "vardag" : "10:00-19:30" 
}, { 
    "adress" : "Högåsstigen 15 332 33 Gislaved", 
    "helg" : "18:00-02:00", 
    "latitude" : 55.603384, 
    "longitude" : 13.020619, 
    "namn" : "Olles Pub", 
    "outlet" : 0, 
    "phone" : "0371-123456", 
    "star" : 1, 
    "tag" : "Krog", 
    "vardag" : "10:00-19:30" 
} ] 

私は、データベースから「住所」をつかむしたいです。

Firebaseから取得したデータを、後で使用できるように配列に追加する際に問題があります。 "タイプ 'Stringの値にメンバー'ジェネレータ 'がないというエラーが表示されます。

私はどのように私のコーディング、任意の提案を進めるのか分からないのですか?

あなたがここに

let adresser = (snapshot.value.objectForKey("adress")) as! String! 

for add in adresser{ 
    adresserArray.append(adresser) 
} 

を文字列を反復処理しようとしている

var adresserArray = [String]() 

let ref = Firebase(url: "https://HIDINGMYURL.firebaseio.com/") 

ref.observeEventType(.ChildAdded, withBlock: {snapshot in 
    let adresser = (snapshot.value.objectForKey("adress")) as! String! 

    for add in adresser{ 
     adresserArray.append(adresser) 
    } 
}) 
+0

でこのコードを置き換えてみてください。 Firebaseデータベースの[Export]ボタンをクリックすると、実際のJSONをテキストとして置き換えてください。 JSONをテキストとして検索可能にすることで、実際のデータを使ってテストしたり、答えに使用したりすることができます。一般的には、これは良いことです。 –

+0

しかし、Peter Kは私を助けましたが、彼のアドバイスを使用した後で私の配列を印刷すると、私はいくつかの奇妙なデータを得ました。多分あなたはアイディアを持っています。 フランクに感謝します。 –

答えて

1

は、ちょうどあなたがあなたの質問でJSONの木の絵を含めました

let adresser = (snapshot.value.objectForKey("adress")) as! String 
adresserArray.append(adresser) 
+0

ありがとう、しかし、私はいくつかのwierd変換を取得します... それは3または4の配列または[]には、任意のアイデアのようなものですか? [ "Högåsstigen10 332 33ギスラベット"] [ "10 332 33ギスラベットHögåsstigen"、 "Högåsstigen12 332 33ギスラベット"] [ "10 332 33ギスラベットHögåsstigen"、 "12 332 33ギスラベットHögåsstigen"、「Högåsstigen15 332 33 Gislaved "] –

+0

あなたはこの結果をどこで得ることができるのでしょうか? –

+0

私はあなたが私に置き換えたいコードの下に直接print(self.adresserArray)を使いました。それから私は私のコンソールでコメントした最後のものを得る... –