0
我试图将更改保存到一个数据库表中的记录,该数据库表具有2个元素的组合键。 当我尝试使用Model :: updateOrCreate或Model :: firstOrCreate方法时,我从数据库中得到一个错误,它告诉我该ID不存在。 看起来像laravel,创建查询时,忽略了我提到的主键。Laravel雄辩updateOrCreate组合键
我的模型:
class CatalogueCatLanguage extends Model
{
public $incrementing = false;
protected $table = "CatalogueCatLanguages";
protected $fillable = ["cataloguecategory_id","language_id","name","description"];
protected $primaryKey = ["cataloguecategory_id","language_id"];
}
我的控制器方法中的代码:
CatalogoCatLingua::updateOrCreate(
[
"cataloguecategory_id"=>$trad["category"],
"language_id"=>$trad["language"]
],[
"name"=>$trad["langName"],
"description"=>$trad["langDescription"]
]
);
错误我是说我有 “的PrimaryKey” 属性:
非法偏移类型在isset or empty
呃ROR我是说我有 “的PrimaryKey” 属性评论:
SQLSTATE [42S22]:列未找到:在 'where子句'
我已经尝试过多种组合1054未知列 'ID'和这样做的方式,但我没有得到什么导致这个错误。
谢谢,提前。