0
whereHas 중첩 된 where 절을 사용하고 있지만 그렇게 할 수 없습니다. 내가 전화하면Laravel : 중첩 된 위치에서 belongsToMany 관계에 액세스 할 수 없습니다.
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
public function scopePickedUser($query, $pickedTypeID)
{
return $query->where(function($query) use ($pickedTypeID)
{
$query->whereHas('photos', function($query) use ($pickedTypeID)
{
$query->whereTypeId($pickedTypeID);
});
if($condition){
$query->orWhere('another_column_id',$var);
}
});
}
public function photos()
{
return $this->belongsToMany(Photo::class);
}
}
, App\Models\User::pickedUser(4)->get()
내가 오류 BadMethodCallException with message 'Call to undefined method Illuminate\Database\Query\Builder::photos()'
무엇입니까 : 다음 나의 모델입니다. 왜 그런가요? 내가 도대체 뭘 잘못하고있는 겁니까?
가 ('사진')와이 한 번 응용 프로그램 \ 모델 \ 사용자 : 시도 두 가지 유형을 시도 할 수 있습니다 생각 -> pickedUser (4) -> GET() – vijaykumar