Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在Laravel 5.2中使用taskId打印任务名称_Php_Laravel 5_Table Relationships - Fatal编程技术网

Php 如何在Laravel 5.2中使用taskId打印任务名称

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); }

我正在使用laravel 5.2开发项目管理应用程序,在我的应用程序中,用户可以创建项目,一个项目有多个任务,一个任务有多个子任务。这就是我与每一款车型的关系

项目模型

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]