【发布时间】:2012-11-04 10:32:11
【问题描述】:
我正忙于开发基于纯 PHP MVC 结构的酒店预订系统的第一阶段。我尝试熟悉 Cake 和 CodeIgniter 等库,但我对自己的控制力如此之小感到不舒服。
所以我选择构建我自己的迷你框架,到目前为止对我来说效果很好。现在,我使用的数据库结构相当复杂。有很多多对多关系和一对多关系。我选择不在数据库本身中强制执行任何引用完整性,因为我认为应该在编程级别完成以避免以后出现挫折 - 事情并不总是按计划进行,我发现以编程方式弄清楚发生了什么比在 SQL 数据库中,错误消息较少
所以,关键是 - 我正在努力做出的决定是在哪里放置这些任意 SQL 语句来处理我的不同对象之间的关系。
因此,例如,我有两个对象 - 用户和属性。在这种关系中,用户是可能容纳将出租的房间的财产的所有者。在我的用户对象模型 (MVC) 中,我有诸如“插入”、“删除”、“更新”、“获取用户”、“用户存在”之类的方法。我的属性模型中存在类似的方法。
每个模型都扩展了我创建的数据库类,以利用与数据库的连接。
在这个结构中,我在哪里以及如何管理这些对象之间的关系?关系是 Properties_has_Users -> 它是多对多的。我在哪里为关系创建插入、更新和删除方法?在它自己的名为“Properties_Users_Relationships”的对象中?在其中一个对象的控制器中?
我是这些论坛的新手,事实上在我三年的发展中,我从未在论坛上发过帖子 - 只是阅读它们,所以如果您希望我发布其他内容以供参考或让它更清晰。
谢谢
【问题讨论】:
-
How should a model be structured in MVC? 的可能副本。请参阅awesome answer。你也应该read this。
标签: php database model-view-controller