【发布时间】:2016-11-04 02:26:49
【问题描述】:
我有两张桌子:
用户:
id、用户名、密码
客户:
id、user_id、全名、地址
在我的 CustomerController.php 中,store() 函数 我需要先创建用户,然后使用 user_id 创建客户。
Customer::create($request->all());
正在插入客户数据但没有 user_id
是否可以使用 Eloquent 同时添加用户和客户?
我的用户模型是:
class User extends Authenticatable{
public function customers(){
return $this->hasMany('App\Customer', 'user_id');
}
}
客户模型
class Customer extends Model {
public function user(){
return $this->belongsTo('App\User');
}
}
【问题讨论】:
-
您需要将您的操作包装在网关模式(也称为服务模式,但与 Laravel 服务提供者的概念不同)中。
-
是的,我们都想偷懒! :) 只写
$customer->save()并期望新用户与客户数据一起保存。