示例场景:在屏幕上显示5个视图,每按一次,彩虹的颜色就会增加一种颜色。模型视图控制器(MVC)设计模式 - 如何将多个视图链接到多个模型?
为了与MVC设计保持一致,它似乎鼓励让一个模型是一个整数或某物的数组,并且每次按下一个视图时,它都会告诉控制器“嘿,我被按下,只是fyi”和然后让控制器说“好的,我会在阵列中增加一个相应的位置”,然后让模型说“我改变了,无论谁在乎”,然后让视图说“我在乎,所以我会改变我的现在颜色“。
^这对我来说似乎绝对荒谬。我想我必须有MVC应该完全倾斜的方式,因为将数据存储在按钮本身似乎更有意义。当然,也许按钮的功能会改变或被重用,所以在按钮按下它的代表(控制器)时留下该做什么,但这似乎有点多。
此外,它是否建议存储与视图的ID?代表们怎么知道哪一个被按下?那么相应的ID应该与模型一起保存?这开始让我想起像意大利面一样的mysql表格...
反正,只是想确保我有那个正确的。
PS-据我所知,没有其他世俗的力量,在那里,我的任务使用MVC绝对完美的每一次,但仍想知道什么是在这种情况下:)
这个问题是一个想法更加完全理解的想法的简化例子,所以我可以快速描述我遇到问题的地方。 我遇到的真正麻烦是它的“多重”方面。最终结果,我想要一个非常强大的按钮式的东西。我的困惑在于它是否应该存储一个ID类型的东西,所以当屏幕上有多个控制器可以告诉哪一个被按下时。但是如果是这种情况,并且有一个与它关联的ID将其链接到具有相同ID的数据集,为什么不将这些数据存储在类似按钮的按钮中呢? – Phildo
再一次,在每个按钮完全独立的极限情况下,数据很简单(ID 1,数据“红色”; ID 2,数据“蓝色”......),那么一个简单的独立按钮就可以清楚地起作用。它不会在设置上给MVC带来很多改变,例如,假设我们想支持多种语言,现在最好有1个按钮,而不是红色/红色/ ...按钮。 – djna