【发布时间】:2015-02-05 04:23:27
【问题描述】:
我是 CakePHP 的新手。到目前为止,我设法建立了一些视图、控制器和模型。这是我的问题:
我有两张桌子:
- tea_types(茶类型列表及其陡峭时间)
- steep_logs(浸泡过的茶历史)
对于每个表,我都有一个模型、一个视图和一个运行良好的控制器。 现在我想创建一个 index.php,我想在其中组合三个元素:
- TeaTypes(操作:编辑、删除、添加、点击开始喝茶)
- TeaTimer(当传递一个茶类型时,应该开始倒计时 - 我想用 JavaScript 来做)
- SteepLog(应将选择的每种茶添加到表中,并显示最后 20 个条目)
这些元素中的每一个都准备好了,但不是这些元素的组合在一个视图中。我是否必须制作一个结合这三个元素的额外控制器?没有模型的控制器是可能的还是明智的?
这两个控制器也是相互关联的:
- TeaType hasMany SteepLog
- SteepLog 属于 TeaType
我认为解决方案并不难,但我会知道最佳实践是什么。
【问题讨论】:
-
您不会为此创建“组合”模型/控制器,但您必须associate the models。然后,使用Containable 行为,您可以在一次查找中检索所有数据。
-
听起来不错。我将看看这些主题。您能否将其发布为答案,然后如果可行,我将关闭该问题。
-
从博客教程重新开始。 book.cakephp.org/2.0/en/index.html#getting-started您的表名没有遵循约定(不是必需的,但也不是好的做法),您提出的问题告诉我,您并不真正知道如何使用该框架,也可能不知道如何使用任何其他 MVC 框架。
-
嗨,burzum,是的,你是对的。我也是 MVC 的新手。你能告诉我应该如何布置我的桌子吗?我以为我在教程(复数等)中做到了。我想我只阅读了“博客教程”,但没有阅读更多主题。我会赶上这个。感谢您提供任何改进我的提示。
-
再做一遍教程,这次注意了。它告诉您关于 first 页面的第三部分(“创建博客数据库”)中的约定。它链接到解释所有约定的此页面:book.cakephp.org/2.0/en/getting-started/…
标签: php cakephp model-view-controller