小编Bak*_*kly的帖子

如何在 Laravel Pivot 模型上调用函数

我试图获取课程中每个用户的出勤情况,其中用户和课程具有多对多关系,并且出勤表基于该关系。但我无法$user->pivot->attendance();直接调用,我必须调用枢轴对象本身,这样我就可以调用它的函数,正如您在答案中看到的那样

以下是我的数据库方案的示例

我需要跑

$users=$course->users;
foreach($users as $user)
{
    $user->pivot->attendance(); //error in this line
}
Run Code Online (Sandbox Code Playgroud)

这一行给出了错误

调用未定义的方法 Illuminate\Database\Query\Builder::attendance()

用户

id
name
etc
Run Code Online (Sandbox Code Playgroud)

培训班

id
name
startDate
endDate
Run Code Online (Sandbox Code Playgroud)

课程用户

id
course_id
user_id
payment
regDate
status
Run Code Online (Sandbox Code Playgroud)

用户出席率

id
course_user_id
time
inOrOut
Run Code Online (Sandbox Code Playgroud)

这是 CourseUserPivot 类

class CourseUserPivot extends Eloquent {


    protected $table ="course_user";



    public function course()
    {
        return $this->belongsTo('Course'); 
    }

    public function user()
    {
        return $this->belongsTo('User'); 
    }

    public function attendance()
    {
        return $this->hasMany('Userattendance','course_user_id');
    }
}
Run Code Online (Sandbox Code Playgroud)

PS:$user->pivot-> payment可以工作并显示属性,但我无法调用方法

php pivot-table laravel laravel-4

3
推荐指数
1
解决办法
6170
查看次数

标签 统计

laravel ×1

laravel-4 ×1

php ×1

pivot-table ×1