Laravel 5 Laravel 5-将数据获取到视图
我认为这与通常向视图传递数据的控制器略有不同。我有一个项目,有一个DocumentOne。在我的应用程序中,用户创建一个项目。然后将它们重定向到该项目的显示页面 因此,创建项目后,用户在该项目的显示页面上,我显示项目ID。然后,我提供一个选择菜单,用户可以在其中选择要显示的文档。假设我在ID为1的项目中,然后我决定为这个项目显示DocumentOne。这将显示包含DocumentOne输入的表单 当用户填写表单并提交时,数据将保存到数据库中。项目ID是DocumentOne的外键。以下路线是为DocumentOne设置的Laravel 5 Laravel 5-将数据获取到视图,laravel-5,Laravel 5,我认为这与通常向视图传递数据的控制器略有不同。我有一个项目,有一个DocumentOne。在我的应用程序中,用户创建一个项目。然后将它们重定向到该项目的显示页面 因此,创建项目后,用户在该项目的显示页面上,我显示项目ID。然后,我提供一个选择菜单,用户可以在其中选择要显示的文档。假设我在ID为1的项目中,然后我决定为这个项目显示DocumentOne。这将显示包含DocumentOne输入的表单 当用户填写表单并提交时,数据将保存到数据库中。项目ID是DocumentOne的外键。以下路线是为D
Route::resource('projects.documentOne', 'DocumentOneController');
现在我有DocumentOne的数据,它链接到ID为1的项目。然而,如果我现在返回到projects show页面,然后再次从下拉列表中选择Document One,我看到的只是一个空表单。这显然是因为控制器是
public function show(Project $project)
{
return view('projects.show', compact('project'));
}
所以我从不为DocumentOne传递它的数据,因为理论上它不是在项目第一次显示时创建的。我想做的是,当在ProjectsShow页面中选择文档时,用该文档的数据库中的任何内容填充表单。如果数据库中没有任何内容,则表单将为空。我有一个DocumentOne控制器,但我不知道是否可以将其链接到项目显示页面。我正在考虑在DocumentOne控制器中执行类似的操作
public function show(DocumentOne $documentOne)
{
return view('projects.show', compact('documentOne'));
}
但我不确定这是否有效。希望我没有太困惑,你明白我在尝试什么,希望有人能就如何最好地处理这种情况提供建议
谢谢在我以前的项目中,我也处理过这样的需求,我想是的。这里是我解决这种需求的解决方案 来自ajax的实际代码调用 路线
get('setFlashData',function(Request $request){
$final_response = array();
$data_information = $request->except('_token');
$request->session()->flash('cmg_quick_create_data', $data_information);
if($request->session()->has('cmg_quick_create_data')){
$final_response['result']['success'] = true;
}
return response()->json($final_response);
});
但根据您的要求:
$data_information = $request->except('_token');
$request->session()->flash('cmg_quick_create_data', $data_information);
我的基本功能是,从快速创建部分(即弹出式表单)到完整创建表单部分共享表单数据,每当用户从弹出式窗口单击“转到完整表单”按钮时,ajax调用上述功能,该功能将设置闪存数据,而不是在目的地侧,我只检查其是否包含闪存数据。并根据数据进行处理
@if (Session::has('cmg_quick_create_data')) {
{!! Form::model(Session::get('cmg_quick_create_data'),["class"=>"form-horizontal","data-parsley-validate"=>"data-parsley-validate",'role'=>'form','files'=>true]) !!}
@else
{!! Form::open(["class"=>"form-horizontal","data-parsley-validate"=>"data-parsley-validate",'role'=>'form','files'=>true]) !!}
@endif
我可以理解这个解决方案可能与您的要求不同,但希望能充分了解您的解决方案。如果我方仍不清楚,期待您的回复