我在CakePHP中尝试了一个示例项目。它取自cakePHP文档。它共有4个表,其中两个列在这里。
CREATE TABLE users (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(255) NOT NULL UNIQUE,
password CHAR(40) NOT NULL,
group_id INT(11) NOT NULL,
created DATETIME,
modified DATETIME
);
CREATE TABLE posts (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
user_id INT(11) NOT NULL,
title VARCHAR(255) NOT NULL,
body TEXT,
created DATETIME,
modified DATETIME
);
正如您所见,users表中的id作为user_id
形式的外键添加到posts表中。但是在样本中没有定义关系。我的意思是通常我们会通过添加约束(在我的情况下使用phpMyAdmin的Relation View)将user_id
显式定义为外键。但这并没有在这里完成,或者我们没有被指示这样做。当使用Cake Bake console
来烘焙我们的Models
时,我们是否需要这些外键约束,或者cakephp会自动将它们弄清楚吗?