2013-02-09 3 views
0

Так что, когда вы запрашиваете модель, которая возвращает хэширование несущей, я получаю his.get ('pic') "[object Object]" в Ember. Итак, как мне попасть в представление?Ember and Carrierwave

{"record":{"id":1234,"first_name":"John","gravepic":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/record/gravepic/13267/IMG_0013.JPG","ios":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/record/gravepic/13267/ios_IMG_0013.JPG"},"thumb":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/record/gravepic/13267/thumb_IMG_0013.JPG"},"small":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/record/gravepic/13267/small_IMG_0013.JPG"},"medium":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/record/gravepic/13267/medium_IMG_0013.JPG"},"large":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/record/gravepic/13267/large_IMG_0013.JPG"}},"eulogy":"FATHER","deceased":true,"gender":"male","photos":[{"accuracy":null,"approval":null,"asset_caption":"","asset_name":null,"assetpic":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/photo/assetpic/270/iccfa_350x200_3.jpg","thumb":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/photo/assetpic/270/thumb_iccfa_350x200_3.jpg"},"small":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/photo/assetpic/270/small_iccfa_350x200_3.jpg"},"medium":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/photo/assetpic/270/medium_iccfa_350x200_3.jpg"},"large":{"url":"http://c185643.r43.cf1.rackcdn.com/uploads/photo/assetpic/270/large_iccfa_350x200_3.jpg"}},"copyright":null,"coredata_id":null,"created_at":"2013-02-09T10:36:13Z","id":270,"ignore":null,"is_approved":true,"latitude":null,"longitude":null,"record_id":"13267","updated_at":"2013-02-09T10:36:13Z","user_id":1},{"accuracy":null,"approval":null,"asset_caption":null,"asset_name":null,"assetpic":{"url":null,"thumb":{"url":null},"small":{"url":null},"medium":{"url":null},"large":{"url":null}},"copyright":null,"coredata_id":null,"created_at":null,"id":null,"ignore":null,"is_approved":true,"latitude":null,"longitude":null,"record_id":13267,"updated_at":null,"user_id":null}],"copies":[{"content":null,"created_at":null,"id":null,"is_approved":true,"name":null,"record_id":13267,"summary":null,"updated_at":null,"user_id":null}],}} 

Следующие вопросы будут такими, как record.photos.first.medium. Или record.gravepic.small

Просто не знаю, как добраться до чего-то за пределами «объекта» объекта

+0

'[object Object]' означает, что вы возвращаете объект/хэш JS, вам нужно будет развернуться дальше, чтобы получить искомый URL. 'this.get ('gravepic.ios.url')' должен возвращать что-то полезное. –

+0

Привет, Брэдли, спасибо за комментирование, но все, что я получаю, не определено. Я ожидал, что смогу просто добавить свойства, но ничего не получаю. Любые хорошие идеи, куда идти отсюда? – tspore

+0

Может быть, он не работает, потому что моя модель не определила его. Я попытался поставить gravepic.url: DS.attr ('string') - Однако это не работает. Любая помощь для этого? DS.Store revision 11. – tspore

ответ

2

я не уверен, если это все-таки точный API, но если вы хотите использовать несколько значений из ряда хэш Я предлагаю добавить новый тип DS.attr.

DS.RESTAdapter.registerTransform('json', { 
    deserialize: function(serialized) { 
    return Em.isNone(serialized) ? {} : serialized; 
    }, 
    serialize: function(deserialized) { 
    return Em.isNone(deserialized) ? {} : deserialized; 
    } 
}) 

App.Something = DS.Model.extend({ 
    gravepic: DS.attr("json") 
}) 
+0

Это потрясающе. Просто хочу, что мне нужно. Благодаря! Это должно быть частью данных ember. – tspore

Смежные вопросы