变形为多 Laravel 关系
Morph To Many Laravel relationship
Question.php
public function votes()
{
return $this->morphToMany('App\User' , 'votable');
}
User.php
public function voteQuestions()
{
return $this->morphedByMany('App\Answer', 'votable');
}
这显示:
Call to undefined method Illuminate\Database\Eloquent\Relations\MorphToMany::exits()
并且 Laravel 告诉您:
Did you mean Illuminate\Database\Eloquent\Relations\MorphToMany::get()?
我认为您的 MorphToMany 关系有问题。
你需要这样的东西:
问题模型:
public function votes()
{
return $this->morphToMany('App\Vote' , 'votable');
}
答案模型:
public function votes()
{
return $this->morphToMany('App\Vote' , 'votable');
}
投票模型:
public function questions()
{
return $this->morphedByMany('App\Question' , 'votable');
}
public function asnwers()
{
return $this->morphedByMany('App\Answer' , 'votable');
}
但是如果你想检查关系是否存在,有has('relationName')
方法。
exists()
方法仅适用于 Eloquent 个模型实例。
Question.php
public function votes()
{
return $this->morphToMany('App\User' , 'votable');
}
User.php
public function voteQuestions()
{
return $this->morphedByMany('App\Answer', 'votable');
}
这显示:
Call to undefined method Illuminate\Database\Eloquent\Relations\MorphToMany::exits()
并且 Laravel 告诉您:
Did you mean Illuminate\Database\Eloquent\Relations\MorphToMany::get()?
我认为您的 MorphToMany 关系有问题。 你需要这样的东西:
问题模型:
public function votes()
{
return $this->morphToMany('App\Vote' , 'votable');
}
答案模型:
public function votes()
{
return $this->morphToMany('App\Vote' , 'votable');
}
投票模型:
public function questions()
{
return $this->morphedByMany('App\Question' , 'votable');
}
public function asnwers()
{
return $this->morphedByMany('App\Answer' , 'votable');
}
但是如果你想检查关系是否存在,有has('relationName')
方法。
exists()
方法仅适用于 Eloquent 个模型实例。