我使用Laravel资源控制器,但是我不确定是否正确使用它。我从创建函数中的简单视图返回开始。在此视图中,我将一个名称写入文本字段,然后单击运行功能索引的提交按钮。 Defaul索引函数只是index(),由于发布请求,我将其更改为index(Request $ request)。但是我不认为索引是满足此需求的正确函数。这是完整的控制器。
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)
{
//
}
将代码放在哪里?什么是我需要的正确功能?还是应该创建一个新功能?
答案 0 :(得分:0)
对于这种模式,资源控制器可能不是最好的。
对于您的情况,我认为更合适的函数命名为:
public function search()
{
return view('invitation.search');
}
然后显示这些结果:
public function results()
{
return view('invitation.results')
->with('user', User::where('name', request()->input('username'))->first());
}
尽管可以对此进行进一步解释和推断,以增加对其他字段搜索的支持。