0

所以这就是我设置的。我有两张桌子;userstodos。每个用户可以有多个“待办事项”。

表格如下所示:

用户: 在此处输入图像描述

待办事项: 在此处输入图像描述

和模型:

class User extends Eloquent 
{
    public function todo() {
        $this->has_many('todo');
    }
}

和...

class Todo extends Eloquent 
{
    public function user() {
        $this->belongs_to('user');
    }
}

请注意,我已经在数据库中为用户附加了一个“待办事项”。因此,话虽如此,我是否应该无法执行以下操作:

$user = User::find(1)->todo;

获取该用户的待办事项?我目前在dd()-ing 时得到 Null :

array(1) {
  ["todo"]=>
  NULL
}

那么,有什么想法吗?我尝试belongs_to()从 Todo 的模型中删除,因为它不应该是必需的,对吧?无论哪种方式都没有区别。我错过了什么吗?

4

1 回答 1

1

您需要返回关系对象,例如

class User extends Eloquent 
{
    public function todos() {
        return $this->has_many('Todo');
    }
}

另请注意,返回数组的关系(例如 has_many、has_many_and_belongs_to)通常被命名为复数形式,因此“todos”与“todo”相对。

于 2012-12-08T16:50:41.053 回答