表「;App\Model\Table\UsersTable“;与“不相关”;id";CakePHP3
我发现这个错误“Table”App\Model\Table\UsersTable”与“id”不关联,有人能帮我解决吗 以下是“我的文档”表的代码:表「;App\Model\Table\UsersTable“;与“不相关”;id";CakePHP3,cakephp,cakephp-3.0,Cakephp,Cakephp 3.0,我发现这个错误“Table”App\Model\Table\UsersTable”与“id”不关联,有人能帮我解决吗 以下是“我的文档”表的代码: class DocumentsTable extends Table { public function initialize(array $config) { parent::initialize($config); $this->belongsTo('Users'); //$t
class DocumentsTable extends Table
{
public function initialize(array $config)
{
parent::initialize($config);
$this->belongsTo('Users');
//$this->setForeignKey('user_id');
$this->setTable('documents');
$this->setDisplayField('name');
$this->setPrimaryKey('id');
$this->addBehavior('Timestamp');
}
}
以下是用户代码表:
class UsersTable extends Table
{
public function initialize(array $config)
{
parent::initialize($config);
$this->hasMany('Documents');
$this->setTable('users');
$this->setDisplayField('id');
$this->setPrimaryKey('id');
$this->addBehavior('Timestamp');
}
}
下面是错误的样子:
编辑:根据url,我试图到达academics控制器,在该控制器中加载documents表
在calander.ctp(academics表的函数之一)中,我使用以下代码:
use Cake\ORM\TableRegistry;
$admin = TableRegistry::get('Users');
$name = $admin->find()->select(['name'])->where([$admin->id => $doc['user_id']])->first();
echo $name;
$admin
是一个表对象,但您正试图在where
子句中访问$admin->id
id
不是表对象的属性,即使它是,也不会有用。它应该是where(['Users.id'=>$doc['user\u id']])
以及何时出现此错误?你想读哪一页?显示您的代码。顺便说一句,关于配置的约定,请查看食谱如何正确地进行关联@Alex Stallen刚刚编辑了这篇文章,并提供了更多详细信息,看看您现在是否可以提供帮助。注意,根据您的屏幕截图,错误发生在模板/Element/forum.ctp
的第51行,而不是日历.ctp
,所以你可能在不止一个地方犯了这个错误。