Просто пытаюсь что-то понять. Проект может иметь много документов. В делопроизводителя, я делаю это в функции create
:Laravel 5 - Странное поведение Я понимаю, что понял
public function create(Project $project)
{
$documents = Document::all();
$documentLink = $_GET['documentType'];
$document = Helper::findInCollection($documents, "name", $documentLink);
dd($document);
if ($document) {
return View::make($documentLink.'Doc.edit', compact('project', 'document'));
}
}
Так что я в основном получить все документы. Затем я получаю документ, над которым я сейчас работаю. Затем я передаю это в представление редактирования для этого документа. dd
отображает для меня правильный документ, так что это нормально.
В режиме редактирования для этого документа, я также вижу правильный документ, я хочу, если я
{{ $document }}
Так что я знаю, что есть правильный Document
. Форма модель для этой страницы редактирования является
{!! Form::model($project->document, [
'class'=>'form-horizontal',
'method' => 'PATCH',
'route' => ['projects.documents.update', $project, $document]
]) !!}
Так я прохождение маршрута моего Project
модели и моего Document
модели. Теперь я бы предположил, что $document
будет документом, над которым я работаю.
Однако в функции обновления, если я
public function update(Project $project, Document $document)
{
dd($document);
return null;
}
Он выводит пустой Document
. Однако, если я удаляю тип подсказки Document
из параметров функций, он выводит id
документа, над которым я работал.
Почему это так? Почему передача Document
выводит пустой документ, но удаление этого только показывает идентификатор текущего Document
.
Любая информация оценили.
Благодаря