0
laravel 5.2를 사용하여 프로젝트 관리 응용 프로그램을 개발 중이며 응용 프로그램 사용자는 프로젝트를 만들 수 있으며 프로젝트 하나에는 많은 작업이 있고 하나의 작업에는 많은 하위 작업이 있습니다. 이Laravel 5.2에서 작업 ID를 사용하여 작업 이름을 인쇄하는 방법
프로젝트 모델
public function tasks(){
return $this->hasMany('App\Task');
}
작업 모델
public function subtasks(){
return $this->hasMany(Subtask::class);
}
하위 작업 모델
public function task(){
return $this->belongsTo(Task::class);
}
이 하위 내 하위 입력하여 양식/form.blade
각 모델과 나의 관계 .php 추가 내 양식 파일에Route::get('projects/{projectId}/task/{taskId}/subtask', function ($projectId, $taskId) {
return view('subtasks/form',['projectId'=>$projectId,'taskId'=>$taskId]);
});
하위 작업
<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>
경로는 나는 $를 인쇄 할 수 있습니다 projectId 및 $ TASKID뿐만 아니라,하지만 지금은 내가이 작업을 수행 할 수있는 방법 ID에 대한 인쇄 프로젝트 이름 및 작업 _이 필요하십니까?
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]);
});
참고 :
업데이트 질문 내 하위 저장 방법
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();
//
}
이 새로운 변화 – John
난 당신이 아무 것도 변경하지 않았다 준 코드에 따라 내 하위 저장 방법을 변경하는 방법을 내 업데이트 된 질문을 참조하시기 바랍니다. 보기에서 개체의 다른 속성에 액세스 할 수 있습니다. 그리고 당신의 업데이트 방법에는 여전히'$ projectId'와'$ taskId' 변수가 있습니다. 오류가 무엇입니까? –
이 오류가 있습니다 ** 클래스 '프로젝트'를 찾을 수 없습니다 ** – John