我有3个表。
表用户
id
name
表标识符
id
email
和透视表标识符_用户
identifier_id
user_id
何时存储数据I何时将数据添加到数据透视表,例如:
$user=new User ;
$iden=new Identifier ;
我使用$user->identifiers((->attach($user->id(,但它只是将数据添加到identifier_id
,但我想将user_id
的数据添加到
NB:我在的两个模型中建立了ManeytoManey的关系
首先:您不能像问题中那样完成任务,因为$user = new User;
只创建默认的User类实例。
例如:如果你没有用户,你需要这样创建:
$user = User::create($userData);
但如果数据库中已经有用户:
$user = User::findOrFail($userId);
或$user = User::where(['some_field' => $some_value])->first();
之后,您可以附加关系:
$user->identifiers()->attach([$identifier_ids]);
如果你已经知道关系id,或者,如果你需要创建它:
$user->identifiers()->([
new Identifier($identifierDataArray),
new Identifier($identifierDataArray),
]);
希望它能帮助你。