我有一個單頁應用程序的木偶和手柄設置。我沒有開始這個項目;它最初是由其他人開發的。marionette serializeData集合中沒有模型
我設法找出其他文件中的東西,但我無法弄清楚這一個。
所以,我有型號/ order.coffee
Model = require './model'
Collection = require './collection'
module.exports = class OrderModel extends Model
# This is the *real* orders model
idAttribute: 'uid'
defaults:
title: 'some order'
module.exports = class Orders extends Collection
model: OrderModel
url: base_url+'history/'
initialize: =>
super
@fetch()
parse: (response) =>
return response.objects
的parse
是因爲怎樣的後端返回數據的存在。 response.objects
包含哪些模型創建JSON對象的列表,這是OrderModel
實例\
接下來是views/SettingsOrderView.coffee
template = require './templates/settings/orders'
module.exports = class SettingsOrdersView extends Backbone.Marionette.ItemView
template: template
events: 'click #back_to_options': 'goToOptions'
serializeData: =>
data = @.collection
setTimeout (-> console.log(data.models)), 5000
$.each data.models, (m_index, m) =>
console.log(m)
return {items: @.collection}
我的問題是在我做{{#each items}}
模板,但他們OrderModel的情況下, ,所以它們在把手中沒用。我需要將它們作爲JSON對象,但由於某種原因(實際上collection.fetch()
)不會在serializeData
中填充@.collection.models
。 5秒後(如setTimeout
所示),data.models
是我所需要的清單,但each
未執行,因爲那時data.models
是一個空列表。
如上所述,我需要JSON化模型,但不可用。我怎樣才能解決這個問題 ?
如果您需要其他數據,請發表評論,我會將其發佈。
謝謝。
謝謝。最後,我刪除了該集合,並在模型本身上使用了「成功」回調。這是我在這裏做的一些破解,但爲我的目的服務。 – ep0