Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在将外键列手动添加到数据库表后,cakephp无法检测模型关联_Php_Cakephp_Cakephp 1.3_Php 5.3 - Fatal编程技术网

在将外键列手动添加到数据库表后,cakephp无法检测模型关联

在将外键列手动添加到数据库表后,cakephp无法检测模型关联,php,cakephp,cakephp-1.3,php-5.3,Php,Cakephp,Cakephp 1.3,Php 5.3,我在CakePHP应用程序中有两个模型:用户和组。起初,我与他们之间没有任何关系。现在,在数据库表组中,我手动添加了列user_id,以便在这两者之间具有以下关系: Groups belongsTo Users Users hasMany Groups 现在,出于某种原因执行此操作后,我不断得到以下错误: 1054: Unknown column 'Group.user_id' in 'field list' 我试着运行CakePHP的bake命令,看看Cake是否会自动检测到我的两个模型之

我在CakePHP应用程序中有两个模型:用户和组。起初,我与他们之间没有任何关系。现在,在数据库表组中,我手动添加了列user_id,以便在这两者之间具有以下关系:

Groups belongsTo Users
Users hasMany Groups
现在,出于某种原因执行此操作后,我不断得到以下错误:

1054: Unknown column 'Group.user_id' in 'field list'
我试着运行CakePHP的bake命令,看看Cake是否会自动检测到我的两个模型之间的关系。当我尝试烘焙用户模型时,CakePHP甚至没有检测到用户和组之间存在hasMany关系。你知道为什么会发生这种情况,我怎样才能解决这个问题吗


谢谢你

也许我误解了你想要你的联系,但我可以想象:

属于某个组的用户

一个组有许多用户

示例用户模型:

class User extends AppModel {
    public $belongsTo = array(
        'Group' => array(
            'className' => 'Group',
            'foreignKey' => 'group_id'
        )
    );
}
示例组模型:

class Group extends AppModel {
    public $hasMany = 'User';
} 

    
用户表将需要一个
组id
字段

所有这些都假设您希望每个用户有一个组。如果您希望用户拥有多个组,那么您可能希望在用户和组之间定义HABTM关系,或者研究可能会为您指明更好的方向(我还没有利用Cake的ACL组件)


无论如何,我强烈建议您查看上的Cakebook页面。

尝试清除缓存。我需要清除哪个缓存在cake 2.x中,删除app/tmp/cache/models中的所有内容/我不确定cake 1.3,可能会略有不同。