Php 如何在Laravel 5.2中使用taskId打印任务名称
我正在使用laravel 5.2开发项目管理应用程序,在我的应用程序中,用户可以创建项目,一个项目有多个任务,一个任务有多个子任务。这就是我与每一款车型的关系 项目模型Php 如何在Laravel 5.2中使用taskId打印任务名称,php,laravel-5,table-relationships,Php,Laravel 5,Table Relationships,我正在使用laravel 5.2开发项目管理应用程序,在我的应用程序中,用户可以创建项目,一个项目有多个任务,一个任务有多个子任务。这就是我与每一款车型的关系 项目模型 public function tasks(){ return $this->hasMany('App\Task'); } 任务模型 public function subtasks(){ return $this->hasMany(Subtask::class); }
public function tasks(){
return $this->hasMany('App\Task');
}
任务模型
public function subtasks(){
return $this->hasMany(Subtask::class);
}
子任务模型
public function task(){
return $this->belongsTo(Task::class);
}
这是我在subtasks/form.blade.php中的子任务输入表单
添加子任务
在我的表单文件中,我也可以打印$projectId和$taskId,但是现在我需要打印项目名称和任务名称,关于ID,我该怎么做
更新问题
请参阅我的子任务存储方法
public function store(Request $request,$projectId,$taskId)
{
$subtask = new Subtask;
$subtask->subtask_name = $request->input('task_name');
$subtask->task_id = $taskId;
$subtask->project_id = $projectId;
$subtask->save();
//
}
您可以这样做Q&D解决方案:
Route::get('projects/{projectId}/task/{taskId}/subtask', function ($projectId, $taskId) {
$project = \App\ProjectModel::find($projectId);
$task = \App\TaskModel::find(taskId);
return view('subtasks/form',['project'=>$project,'task'=>$task]);
});
注意:在表单操作中,您需要更新以下内容:
['projectId'=> $projectId, 'taskId'=>$taskId]
作者:
请参阅我更新的问题“如何根据此新更改更改子任务存储方法”我给您的代码没有更改任何内容。它只允许您访问视图中对象的其他属性。在更新方法中,仍然有$projectId和$taskId变量。错误是什么?噢,请看我编辑的答案,如果您没有使用FQN,则需要为项目和任务提供您的模型名。现在出现此错误routes.php第120行:类“App\ProjectModel”not foundMan,您必须使用您的模型名,而不是我的模型名。。。我不知道你是怎么命名你的模特的。。。
Route::get('projects/{projectId}/task/{taskId}/subtask', function ($projectId, $taskId) {
$project = \App\ProjectModel::find($projectId);
$task = \App\TaskModel::find(taskId);
return view('subtasks/form',['project'=>$project,'task'=>$task]);
});
['projectId'=> $projectId, 'taskId'=>$taskId]
['projectId'=> $project->id, 'taskId'=>$task->id]