Как напечатать имя задачи, используя taskId в Laravel 5.2

Я занимаюсь разработкой приложения для управления проектами, используя 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

Добавить подзадачу

 <form class="form-vertical" role="form" method="post" action="{{ route('subtasks.form', ['projectId'=> $projectId, 'taskId'=>$taskId])}}">
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
<input type="text" name="task_name" class="form-control" id="name" value="{{ old('task_name') ?: '' }}">
@if ($errors->has('task_name'))
<span class="help-block">{{ $errors->first('task_name') }}</span>
@endif
</div>
<div class="form-group">
<button type="submit" class="btn btn-info">Create Task</button>
</div>
<input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>

маршрут

Route::get('projects/{projectId}/task/{taskId}/subtask', function ($projectId, $taskId) {

return view('subtasks/form',['projectId'=>$projectId,'taskId'=>$taskId]);
});

в моем файле формы я могу также напечатать $ projectId и $ taskId, но теперь мне нужно вывести имя_проекта и имя_программы относительно идентификаторов, как я могу это сделать?

обновленный вопрос
пожалуйста, посмотрите мои методы магазина подзадач

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

0

Решение

Вы можете сделать так (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'=> $project->id, 'taskId'=>$task->id]
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]