2013-03-07 81 views
-1

我开始首次使用codeigniter并开始计划编码结构。codeigniter的应用程序范围类

我有许多'对象'在整个应用程序中定期引用:用户,文章,照片,评论,论坛主题等。这些对象将执行常见功能,如获取/设置关于用户,文章,照片,评论,主题等等。这些东西通常在每个控制器的某个点或另一个点上引用。

哪里是正确的/最佳实践的方式来存储这些以及如何?

+0

它们通常应在您的库或模型文件夹中。然后,我再也不能肯定地说,因为我不知道这些物体是干什么的。如果你发布更多的信息,那么它会更容易。 – 2013-03-07 15:19:39

+0

@crypticツ我已更新我的描述。 – David 2013-03-07 15:21:25

+0

请参阅http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html和http://ellislab.com/codeigniter/user-guide/general/models.html – 2013-03-07 15:24:51

回答

-2

这正是MVC是如何工作的?

听起来像是你创建模型/库为每个业务对象,然后要么使用config->自动加载,包括他们或在您的核心控制器加载它们类(application/core/MY_Controller)。

+0

谢谢,我只是想确定他们不是模特而是其他人。 – David 2013-03-07 15:26:03

+0

这与“mvc如何工作”无关。 – 2013-03-10 09:46:56

+0

数据交互与应用程序指令和UI的分离?那不是'MVC如何运作'?新闻给我...我认为这是MVC模式的重点。 – jcorry 2013-03-14 15:15:52

-1

一般而言,我会建议在控制器中构建您的方法,然后重构并将方法推送到模型中。然后在你的模型中重构。管制员说 - 做这个,像指挥官一样挥挥手。它没有说明如何去做,模型中的'如何'。

我刚刚正在学习的另一个建议是,从用户角色的角度设计和构建应用程序 - 例如管理员,采购员,编辑等。不要将使用的工具CRUD在应用程序的中心。应用程序应该由用户需要执行的操作来驱动。 '鲍勃叔叔'马丁有一个很好的引用 - 如果你要求建筑师向你展示一套房子的设计,他们不会回来一个工具列表,如锤子,锯子和卷尺。而且这个架构设计并没有涉及大量的实现细节。蓝图 - 或者你的物体设计 - 仅仅是为了必要的。