【发布时间】:2013-03-13 16:19:18
【问题描述】:
我有一个表,它的行是集合中的模型,每行有两列输入,每小时费率和小时数,模型也有属性total,基本上只是rate_per_hour*hours,它正在更新为用户更改小时数或每小时费率。您也可以添加新行并删除它们。这一点,我相信,我设法做到了正确的主干方式。
现在我不确定第一部分,我需要一个包含小时和总和的 div,我也设法做到了这一点,使用一个函数(它基本上只是通过集合中的模型循环,总和他们的属性,然后使用 jquery 更新我的 div),更改模型上的事件,在设置新属性后,正在调用此函数。它在所有视图/集合/模型之外。不确定这是否是正确的做法,但它确实有效。
现在最糟糕的部分是我惨败,意识到我的代码可能从一开始就错了。在带有总计的 div 下是另一个输入,称为折扣,它应该做的是计算折扣百分比((value of discount/my total sum)*100),然后更新表中的费率,以便显示旧的和应用了折扣的费率。
这里的实际问题:
我不明白的是,我应该如何将底部(总计和折扣 - 见截图)与上部连接起来,底部是否应该是另一个模型,具有属性总计、折扣和小时数,并拥有它自己视图而不是一个简单的 div?但是它是如何工作的,一个模型(折扣)如何影响集合中的模型,反之亦然,添加一行需要影响总数和折扣百分比?
这是我尚未使用骨干网的纯 jquery 版本应该如何工作的屏幕截图。
如果需要也将发布代码,但现在我尝试使用 jquery 事件、包含这些总数和 shizzle wizzle 的我自己的简单对象来解决它有点臃肿。
【问题讨论】:
-
问题真的是“我为什么需要 2 个模型”吗?请记住,您可以拥有使用来自相同模型的数据并相应地使用数据的单独视图。
-
不,我绝对不介意有两个模型,我只是 1)不知道这些“总数”是否应该是模型 2)集合的变化如何影响该模型,反之亦然, “折扣”的变化如何影响收集中的数据
标签: javascript jquery model-view-controller backbone.js underscore.js