以下是我的情况。
我有两个控制器包含CRUD方法的模型。
创建文件时,将指定(选择)已创建文件所附加的文档。
在我store
的{{1}}方法中,在存储新创建的文档之后,我希望使用新创建的文档的documentController
重定向到files/create
路由,以便文件无需选择文档即可创建。
到目前为止我有什么
DocumentController
id
文件/ create.blade.php
$input = $request->all();
$document = $this->documentRepository->create($input);
return redirect(route('files.create'),array('documentID' => $document->id));
我怎么能做到这一点。
答案 0 :(得分:2)
response()方法中的第二个参数是重定向时应该使用的http状态代码。
你需要链接with()方法:
$input = $request->all();
$document = $this->documentRepository->create($input);
return redirect(route('files.create'))->with('documentID', $document->id);
然后,您可以使用{{ session('documentID') }}
请参阅:https://laravel.com/docs/5.3/responses#redirecting-with-flashed-session-data
答案 1 :(得分:1)
解决此问题的方法是制作接受documentID
的新路线,以便获得Route::get('/files/createFromDocument/{$documentID}', 'FileController@createFromDocument')->name('files.createFromDocument');
在FileController
您要添加新功能
function createFromDocument($documentID)
在这里你可以处理这个特例
答案 2 :(得分:0)
已编辑:尝试此代码
return redirect()->route('files.create', ['documentID' => $document->id]);
答案 3 :(得分:0)
试试这个:
return redirect()->route('files.create', $document->id);
答案 4 :(得分:0)
试试这个:
return redirect("files/$document->id/create")
路线:
Route::get('/files/{$documentID}/create', 'FileController@createDocument');
功能:
public function createDocument($documentId){}