gpt4 book ai didi

ruby-on-rails-3 - 在模型更改重新渲染时,一些嵌套属性消失

转载 作者:行者123 更新时间:2023-12-03 00:16:12 25 4
gpt4 key购买 nike

我有以下消息主干设置:

  class InboxItemView extends Backbone.View
initialize: ->
@model.on('change', @render, @)
render: ->
@$el.html JST['buy/messages/templates/received_message'](@model.toJSON())
@

class InboxListView extends Backbone.View
items: []
initialize: ->
@collection.on('reset', @reset, @)
reset: ->
_.each @items, (item) -> item.remove()
@items = _.map @collection.received(), (model) =>
item = new InboxItemView(model: model)
@$('tbody').append item.render().el
item

型号

  class Message extends Backbone.Model

class Messages extends Backbone.Collection
model: Message
url: '/messages'
received: -> @filter (message) -> message.get('receiver').id == gon.userId

拉 bool :

object @message
attributes :id, :title, :body, :read_at, :created_at, :last_reply

node :path do |message|
message_path(message)
end

child :sender => :sender do
attributes :id, :nickname
end

child :receiver => :receiver do
attributes :id, :nickname
end

在初始渲染期间,一切都显示正常。但是,当我更改模型并且列表项重新呈现时,模型的发件人哈希变为空。因此,渲染器不会打印出发件人的姓名。像标题这样的属性仍然会显示,因为它们不是嵌套的。

为什么嵌套属性消失了?我正在渲染一些中间模型吗?

最佳答案

首先要尝试的是,在 InboxItemViewrender 方法中,console.log(@model, @model.toJSON()).使用 Web 检查器或 firebug,展开生成的对象并查看它们有何不同(如果有的话)。没有真正的原因会删除字段,因此您需要弄清楚模型中的内容以及 toJSON 中的内容。

关于ruby-on-rails-3 - 在模型更改重新渲染时,一些嵌套属性消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10101404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com