我已经研究了一段时间的MVC,类似这样的问题(这个)和(这个)。
然而,它们没有回答我的问题。在许多MVC示例中(包括ASP.NET MVC和JAVA MVC),他们通常为模型提供字段,例如(名字,年龄等),然后允许视图“读取”这些字段。
但是,从我所理解的来看,视图不应该知道模型,因为如果视图知道模型,则其封装就不正确。
然而,图片显示视图知道模型以显示正确的数据。
如果我理解正确,那么模型可以是系统的业务逻辑,视图不应与之连接。
假设我的模型从数据库获取数据,那么仍然是我的模型是我的业务逻辑,而不是数据库,或者我想错了吗?
所以我的问题是
- 视图是否需要知道模型以使用正确的数据?
- 控制器的工作是从例如数据库中获取数据并从中创建模型,然后视图应该使用模型数据进行显示吗?
- 什么是模型业务逻辑?(请不要使用字段来解释)