【发布时间】:2017-07-09 19:23:49
【问题描述】:
例如:我有项目模型和需要模型。
因此,当用户创建一个新项目时,他还必须创建它(需要),每个项目可能不止一个。
我在 projectController 的“存储”方法中做到了这一点:-
$project = new Project;
$project->name = $request->project_name;
$project->type = $request->project_type;
// ... etc
if ( $request->exists("project_needs") ) {
foreach ( $request->project_needs as $project_need ) {
$need = new Need;
$need->title = $project_need['title'];
$need->project_id = $project->id // Here is the thing
}
}
但它给了我一个错误,因为(我认为)project_id 尚未创建,因为它没有保存到数据库中,所以创建两个模型实例(项目和需求)并保存它们的最佳方法是什么他们的关系?
我应该保存项目然后获取 (last-save-id) 吗?还是有更好的(Laravel 方式)来做到这一点?
更新:-
projects 表架构:-
id、name、type_id
需要表架构:-
id、project_id、title
types 表架构:-
ID、名称、描述
【问题讨论】:
-
分享你的数据库
-
请分享您的模型定义
标签: php laravel orm eloquent query-builder