表" App \ Model \ Table \ UsersTable"与" id"无关cakephp 3

时间:2017-07-01 10:03:45

标签: cakephp cakephp-3.0

我收到此错误'表" App \ Model \ Table \ UsersTable"与" id"无关',任何人都可以帮忙解决这个问题吗?

这是我的文件表的代码:

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');
    }
}

这是错误的样子:

enter image description here

编辑:根据我试图联系学术控制人的网址,我在其中加载文件表。

在calander.ctp中,学术表的一个功能,我使用以下代码:

use Cake\ORM\TableRegistry;
$admin = TableRegistry::get('Users');
$name = $admin->find()->select(['name'])->where([$admin->id => $doc['user_id']])->first();
echo $name;

1 个答案:

答案 0 :(得分:1)

$admin是一个表格对象,但您尝试访问$admin->id子句中的whereid不是表格对象的属性,即使它是,它也不会有用。它应该是where(['Users.id' => $doc['user_id']])