cakephp 2.0中的内部联接?

时间:2012-06-04 03:44:30

标签: php mysql cakephp

我知道在这里提出这个问题有点懒,因为基本上我只需要阅读文档让我知道答案。但实际上我没有那么多时间,而且我还是初学者。

我想在cakephp中生成这种查询:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName

但问题是我有点困惑,因为你可以看到你将从2个不同的表中选择值。所以我的猜测是,我需要为每个和控制器创建两个模型。这有点麻烦吗?

1 个答案:

答案 0 :(得分:1)

您想要做的是CakePHP提供的基本模型关联。 http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html

所以是的,你需要为每个创建模型,可能有一个关联,所以一个人有很多订单。

此外,使用MVC架构,您通常会在数据库中为每个表建立一个模型。您的控制器将处理模型和视图之间的通信。因此,如果不需要模型的专用视图,那么您可能不需要它们的控制器。

我真的建议你浏览CakePHP的书并做他们提供的博客演示,并真正尝试根据MVC架构提出的概念。