0
語境:我建立使用灰燼前端+ Rails的API配方的應用程序。在我的後端配方模型我存儲image_urls數組(以及一些其他的數據作爲字符串)。 Ember公司的數據是高興的字符串添加到店,但當然不能處理的「數組」數據類型開箱即用的。我創建了一個數組轉換爲試圖解決這一問題,但我不認爲我的轉變甚至被調用。在任何情況下我IMAGEURL數據屬性回報爲未定義。我的陣列數據類型不與Ember數據工作
下面是該項目的樣子:
//配方模型
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
cookTime: DS.attr('string'),
yield: DS.attr('string'),
servings: DS.attr('string'),
imageUrls: DS.attr('array'),
ingredients: DS.hasMany('ingredient'),
});
//來變換/ array.js
import DS from 'ember-data';
export default DS.Transform.extend({
deserialize: function(serialized) {
return (Ember.typeOf(serialized) == "array") ? serialized : [];
},
serialize: function(deserialized) {
var type = Ember.typeOf(deserialized);
if (type == 'array') {
return deserialized
} else if (type == 'string') {
return deserialized.split(',').map(function(item) {
return jQuery.trim(item);
});
} else {
return [];
}
}
});
這裏是什麼JSON的樣子:
recipes: [{id: 14, name: "laudantium reprehenderit est", cook_time: "166 minutes", image_urls: ["http://s.iamafoodblog.com/wp-content/uploads/2015/10/meatlovers-pizza-9.jpg",…]},...]
I k現在Ember並不容易違背慣例,但我仍然希望能夠使這種方法奏效。另一種方法可能是將image_urls作爲關係數據發送,這樣我可以在我的食譜和圖像之間創建一個hasMany關係,但這看起來也不太合適。對什麼是錯我的代碼或其他途徑的任何想法來解決這個問題?