我创建了两个表
AREAS
-id
-areaName
SOCIETIES
-id
-area_id
-societyName
我的关系定义如下
class Area extends Model
{
//
public function society()
{
return $this->hasMany('App\Society');
}
}
class Society extends Model
{
public function area()
{
return $this->belongsTo('App\Area');
}
}
现在我已经为区域和社会创建了对象
$area = new \App\Area();
$area->areaName = $input['areaName'];
$society = new \App\Society();
$society->societyName = $input['societyName'];
$society->area()->associate($area);
此后我打电话给" $ society-> save()"它不保存任何记录并给出错误area_id不能为空。我想一气呵成地拯救社会及其关系领域。
当我使用" $ area-> save()"在调用" $ society-> save()"之前将其保存记录。我想做的就是跳过" $ area-> save()"并一次性拯救社会和地区。
答案 0 :(得分:0)
它给你错误,因为你没有在数据库中有一个id的记录。您需要先保存区域记录,然后将其与关系相关联。我认为它不会有其他工作,请看一下laravel网站上雄辩的文档: