嘗試按 ID 過濾查詢時出現以下錯誤:

我的查詢:
$film=film::wherehas('actor', function($q) use($actor_id){
$q->where('actor_id','=', $actor_id);
})->get();
型號影片:
class film extends Model{
protected $table = "film";
protected $primaryKey = 'film_id';
public $timestamps = false;
use HasFactory;
protected $sql=['film_id', 'title', 'length'];
}

uj5u.com熱心網友回復:
只需將您的查詢更改為:
$film=film::wherehas('actor', function($q) use($actor_id){
$q->where('film_actor.actor_id','=', $actor_id);
})->get();
uj5u.com熱心網友回復:
您的查詢不知道actor_id您在該where()子句中針對哪一列。附加表名,例如:
$q->where('film_actor.actor_id', '=', $actorId);
// or `actors.actor_id`, not sure which is being expected here.
或者考慮將您的actors表更改actor_id為id. 通常,您不會將表名附加到id主鍵。與films.film_id;相同 那只能是id。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/317409.html
上一篇:Laravel多型關系問題
下一篇:在laravel中連接php
