【问题标题】:backbone-relational id references with backbone.marionette骨干关系 ID 引用与骨干.marionette
【发布时间】:2012-06-27 05:28:44
【问题描述】:

我使用骨干关系的 includeInJSON: 'id' 来仅包含相关的模型 ID,以避免向我的服务器端发送整个对象树的垃圾邮件。不幸的是,Backbone.Marionette.View 默认只公开由 toJSON 返回的视图模式的属性,这意味着相关模型不再可以在视图模板中访问。

我意识到我需要一个自定义 Marionette.View serializeData。由于几乎我所有的模型都需要这个,我希望能通用地解决这个问题;即覆盖所有视图的 serializeData 以便它使用骨干关系 id 引用做正确的事情。

有人已经这样做了吗?我对此并不太抱有希望,但我认为还有其他人可以使用它,所以如果没有别的,一旦我编码了它,这将作为一个倾倒我的解决方案的地方。 :)

任何解决方案都需要以下选项之一:

  1. 为模型定义两个版本的 toJSON,一个使用 includeInJSON,另一个始终将其视为 true。

  2. 某种方法可以突破 Marionette 对视图模板的限制,仅使用模型属性和基于属性的助手。

【问题讨论】:

    标签: backbone-relational marionette


    【解决方案1】:

    我有一个使用选项 #1 的功能解决方案,但它是如此的 hack,我不忍心公开发布它。基本上,在 serializeData 中,我进入模型并在调用 toJSON 之前和之后修改 _relations。不是线程安全和丑陋的。希望尽快回来并找到合适的解决方案。

    【讨论】:

    • 鉴于 Javascript 中没有线程,我不会太担心它“不是线程安全的”。
    • 啊,对。好吧,丑陋的部分仍然存在并且仍然困扰着我,但是直到你刚才提醒我,我忘记了这个黑客在我的代码中。猜猜这意味着它正在做它的工作并且不碍事。 :)
    猜你喜欢
    • 1970-01-01
    • 2016-06-24
    • 1970-01-01
    • 2016-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-26
    • 1970-01-01
    相关资源
    最近更新 更多