Routing 带分页和restful控制器的Laravel路由
我和其他很多人在一条类似的船上…从Codeigniter到Laravel 我正在对数据库执行搜索,并正确地输入结果,甚至使分页工作正常。(一次只显示30个链接,其余结果显示底部的链接) 从零件搜索视图开始,该视图由控制器中的get函数调用。我在控制器中有一个post函数,用于提取结果。(URL仍然是部分搜索,但正在使用post功能) 问题是,当您选择第6页(URI是parts search?page=6)时,它会被路由回拉入第一个parts search页的函数 我想说,我必须这样做:Routing 带分页和restful控制器的Laravel路由,routing,pagination,laravel,Routing,Pagination,Laravel,我和其他很多人在一条类似的船上…从Codeigniter到Laravel 我正在对数据库执行搜索,并正确地输入结果,甚至使分页工作正常。(一次只显示30个链接,其余结果显示底部的链接) 从零件搜索视图开始,该视图由控制器中的get函数调用。我在控制器中有一个post函数,用于提取结果。(URL仍然是部分搜索,但正在使用post功能) 问题是,当您选择第6页(URI是parts search?page=6)时,它会被路由回拉入第一个parts search页的函数 我想说,我必须这样做: Rout
Route::any('parts-search?page=(:any)
但是我不知道如何维护相同的搜索变量,或者是否每次都必须运行查询
这些是我的文件:
routes.php
Route::controller('home');
Route::get('/', function()
{
return View::make('home');
});
Route::get('parts-search', 'home@parts_search');
Route::post('parts-search', 'home@parts_search');
home.php(控制器)
public$restful=true;
公共函数get_index()
{
返回视图::make('home');
}
公共函数get\u parts\u search()
{
返回视图::make('part-search');
}
公共功能post\u parts\u search()
{
if(输入::get('part_search'))
{
$term=Input::get('part_search');
$parts=Part::where('Part','LIKE',$term.'%'))
->订购人(‘零件’、‘asc’)
->分页(30);
返回视图::make('results')
->带('parts',$parts)
->带('期限',$期限);
}
其他的
{
返回视图::make('part-search')
->带有('error','Please enter a search term');
}
}
无论是直接的答案,还是一个让我学习的地方,我都将不胜感激……任何课程的修改,因为这是我在拉雷维尔的第三天。谢谢
所以我已经确认这肯定是一个路由问题,但对于从哪里开始,我还没有一点模糊的线索。我整天都在问Google gods,但都没有用。这就是为什么你会在GET请求中进行搜索查询,这样搜索关键字就会出现在URI中。大多数应用程序都是这样做的,甚至是堆栈溢出
要在您想要更改页面时维护查询字符串,请单击。好的,现在我的问题是分页会创建带有?的链接,但我无法解析它们,除非它们是/。如果我尝试设置Route::get('results?(:any?),function($term=NULL),我仍然会得到一个404
public $restful = true;
public function get_index()
{
return View::make('home');
}
public function get_parts_search()
{
return View::make('part-search');
}
public function post_parts_search()
{
if (Input::get('part_search'))
{
$term = Input::get('part_search');
$parts = Part::where('part', 'LIKE', $term.'%')
->order_by('part', 'asc')
->paginate(30);
return View::make('results')
->with('parts', $parts)
->with('term', $term);
}
else
{
return View::make('part-search')
->with('error', '<h1>Please enter a search term</h1>');
}
}