【发布时间】:2019-03-08 00:08:12
【问题描述】:
我使用 Laravel 资源控制器,但我不确定我是否以正确的方式使用它。我从一个简单的视图返回开始,我把它放在创建函数中。在此视图中,我将名称写入文本字段并单击运行函数索引的提交按钮。默认索引函数只有 index() 由于 post 请求,我将其更改为 index(Request $request)。但我不认为 index 是满足这种需求的正确功能。这是完整的控制器。
public function index(Request $request)
{
$username = $request->username;
$user = User::where('name', $username)->select('id', 'name')->first();
return view('invitation.username')->with('user', $user);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('invitation.username');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
将代码放在哪里?什么是满足我需求的正确功能?还是我应该创建一个新函数?
【问题讨论】:
-
先显示你的路线
-
首先请告诉我们更多关于您打算做什么的信息?
index通常用于整个资源的小“主屏幕”,例如显示包含所有用户的表格。所以index可能不是最适合你的。根据您的需要,它应该是show的派生词,或者基于返回的视图的createWithUser(与create上的视图相同)。如果您能提供更多信息,我们可以提供更好的帮助。
标签: laravel controller