未定义属性:Illuminate \ Database \ Eloquent \ Collection

时间:2016-02-20 14:45:22

标签: php laravel

我的用户在我的项目中有一些调用,每个调用都属于一个用户。我使用了laravel elequent关系来检索用户调用,如下所示: 用户模型:

namespace App;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    protected $table = 'customers';

    public function customer_logs()
    {
        return $this->hasMany('App\call_log');
    }

通话模型:

namespace App;

use Illuminate\Database\Eloquent\Model;

class call_log extends Model
{
    protected $table = 'customer_logs';

    public function customer()
    {
        return $this->belongsTo('App\User');
    }

但是当我在控制器中调用customer_logs函数时,我遇到了这个错误: 未定义属性:Illuminate \ Database \ Eloquent \ Collection :: $ customer_logs

这是我的控制器:

$user = User::first()->get();
        $user->customer_logs->toArray();

1 个答案:

答案 0 :(得分:0)

您首先使用,因此无需调用get查询。将其更改为

$user = User::first(); 
$user->customer_logs()