2017-02-20 16 views
0

私はJSONのこの部分に固執しています。私はFirebaseを使用しています。古いコードですべてがうまくいきました。そして、私は、 "キャンペーン"内の会社情報を "入れ子にする"ことに決めました。スウィフトでJSON解析3

JSON:

"title" : "Somethign", 
    "company" : { 
    "iplydxT8UHhBfEKhZdAco5c5Luy1" : { 
     "commany_image" : "url/to/company/image", 
     "company_name" : "John Doe" 
    } 
    }, 

スウィフト3モデル:

title = snapshotValue["title"] as! String 
let companysnapshotValue = snapshotValue["company"] as! [String: AnyObject] 
    for (key, value) in companysnapshotValue { 
     let companysnapshotValue = companysnapshotValue[key] as! [String: AnyObject] 
     company_name = companysnapshotValue["company_name"] as! String 
    } 
} 

この部分は素晴らしい作品と私​​はcompany_nameが、しかし、私は初期化せずに初期化子から戻ってるというエラーをゲットすることができますすべての格納されたオブジェクト。

これは私のコードがどのように見えるかです。私は会社名とイメージを「キャンペーン」モデルに直接保存していました。しかし、これを正しく行うには、キャンペーン内の会社情報を入れ子にする必要があることを知りました。私はこれを他のモデルにも適用できるように学びたいと思っています。助けが大いにありがとう!

旧コード:

title = snapshotValue["title"] as! String 
company_name = snapshotValue["company_name"] as! String 
company_image = snapshotValue["company_image"] as! String 

答えて

0

だから私はこの問題を考え出しました。私はちょうど "for"の前に会社名と会社のイメージを設定してしまいました。

関連する問題