php - 为 CakePHP 定义数据库中的关系

标签 php mysql cakephp cakephp-2.0 cakephp-model

我正在尝试 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 表中。但在示例中没有定义关系。我的意思是,通常我们会通过添加约束来显式定义 user_id 作为外键(在我的例子中使用 phpMyAdmin 的关系 View )。但这里没有这样做,或者我们没有被指示这样做。当使用Cake Bake console来烘焙我们的Models时,我们是否需要这个外键约束,或者cakephp会自动计算出它们吗?

最佳答案

约定优于配置

Cakephp 会自动为您计算出它们,但您必须遵循 naming conventions

关于php - 为 CakePHP 定义数据库中的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25028617/

相关文章:

c# - 列之间的数据网格操作

python - mysql_exceptions.OperationalError : (1054, "Unknown column ' xxx'在 'field list'“)

php - 在 PHP 中加密字符串

php - 类似于 C++ 的 PHP 类模板

MySQL 滚动行数

CakePHP 插件模型关联不起作用

php - 如何在 cakephp 中获取 Controller 内所有函数的列表

CakePHP - loginAction 的绝对 URL

php - Laravel 4 级联软删除

php - Wordpress:WP_Query 如何应用具有自定义帖子类型的搜索条件