问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Mvc模式中,model一定是对应数据库表的内容吗

发布网友 发布时间:2022-04-09 09:56

我来回答

2个回答

懂视网 时间:2022-04-09 14:17

Model既不绝对对应数据表,也不需要对应前端视图,Model对应的是“数据模型”这个抽象的概念 —— 状态和操作。

数据表是Model的存储实现,存储实现不一定只有数据表,可能用不同存储系统存放
数据分片,Model的作用就是掩盖这个底层细节,给上层代码一个统一稳定的接口。

前端视图需要Model的状态,但并不直接操作Model,这是Controller或者View做的事,所以本身并不直接决定Model的
设计。

Model的设计表面上同时对应数据表和前端视图,严格地说两者都不是Model设计的起因。Model实现“数据模型”这个抽象的概念。


Model 应该要和数据库表结构一致么?
以user为例子,假设前端呈现的user信息有某个字段不包含在user表内,而是要通过联合其他表多表查询得出。
这个时候后端UserModel应该:
1,和数据库保持一致,发送数据给前端前 整合数据(发送另一个user class)
2,和前端保持一致,在后端填充构造Model时就一步到位。(目前我是真么做的,Model里冗余了数据字段,未和数据表一一对应)
3,多造API,从前台整合数据。
4,在user表中添加一个字段
5,其他

应该采取什么样的方式呢?
或者是不是应该创建一个数据库视图?可以将view 作为数据源获取数据么?

不考虑修改成本。

新手,问得问题比较傻,如有错误,大家可以随意喷。。。但希望还是可以帮我解答一下,十分感谢!

所以才会提出MVVM啊
M = Model = 映射数据库结构
VM = ViewModel = 映射显示层需要的数据结构
V = View = 显示层本身

当然这个概念本来是给WPF和银光用的,所以放到web app上不完全合适。但是基
本概念没任何问题

在web app里边
V层就是你的前端,HTML+CSS+JS
VM就是你的web service返回值以及前端JS需要的数据结构
M就是你后台的数据映射

VM和M之间的转化就是你的web service
V和VM之间的关
系一般靠各种框架来解决,比如React或者Angular等等

至于你的VM和M怎么划分,那就是另一个问题了

 


结论:1、不一定一致,结构简单时可以一致
         2、划分为Model和ViewModel,会构建多个model

model一定是和数据库表对应的么?

标签:

热心网友 时间:2022-04-09 11:25

Control处理页面请求,并调用Model中的业务逻辑,Control是发送指令控制流程,而不应该吧业务逻辑放在Control,轻Model,可以是在页面提交表单时通常会以最小的表单Model来发送请求,个人理解.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
求电脑玩安卓游戏的方法。步骤。以及所有的文件~谢谢 。有的联系我~ 我在电脑管家软件管理下的鹰击长空2都是解压包 澳洲留学读研申请攻略 澳洲留学申请时间是什么时候 去澳大利亚上大学需要什么手续 澳洲留学申请流程时间如何? 中南财经政法大学保险精算专业介绍 黄福记小吃梅干菜扣肉饼怎么样 如何开一家梅干菜扣肉饼店,成本要多少 在照明行业LED配光曲线图怎么看 怎么写,有拼音。 三年级童话世界多么神奇啊 快递员用纸盒为老人写看剧指南,都有哪些适合家里长辈观看的电视剧? 夹手的拼音怎么写 “举起手来”的拼音怎么写? 号手就位的拼音? 孕妇梦见捉到一条小鲤鱼被剖肚 德贝得壁挂炉显示E1,有天然气,有打火的声音,Pl值80,要怎么解决一下? 迪能壁挂炉E0什么毛病 三亚免税店有没有蜜丝佛陀专柜? 请问三亚免税店有香奈儿的饰品专柜吗? 长春有菜鸟物流分公司吗 长春丰泰物流有限公司怎么样? 长春富汇物流有限公司怎么样? 长春市路铭物流有限公司怎么样? 双汇在中国有多少个子公司的那个都在那里 湖北鼎辉江海物流有限公司怎么样? model的名字必须要跟数据库表名对应?可以用别名吗? 扭蛋人生怎么让人物头发用漂动? jizz明星 用电脑画图功能改照片像素大小,本来是300×450 的像素改到432×576 怎么改? 紫砂茶壶是怎么做出来的 便宜的注浆“紫砂壶”是怎么做出来的 知道紫砂壶是怎么做出来的吗 紫砂壶是怎么做的~~~ 我买的10元紫砂壶是紫砂的么 《几十块的紫砂壶是真的紫砂泥料做的吗 市场上十几块钱一套的紫砂茶壶茶杯 如何做旧紫砂壶? 说说CPU与内存的主要厂商和其产品. CPU的主要性能是什么?生产CPU的知名厂家有哪些? 微型计算机CPU的生产厂家主要有 ? 目前生产PC机CPU的主要厂商有___8___和___9___, CPU生产厂家都有那几家? unc0ver5.2.0版本 13.5.1清除越狱环境卡2怎么解决? uncoveripad不能用 CPA考证打印什么时候开始? java里面,model里面的成员变量类型一定要和数据库的字段类型对应拿 网络摄像机能转模拟信号吗? 如何将前端网路摄像机的数字信号转换成模拟信号接入现有的DVR硬盘录像机之中,(不用NVR(网络硬盘录像机