目前正尝试在产品对象上对某些结果进行分页。
我在视图{{ $products->links() }}
中收到的paginate对象正在正确返回,而不是查询为“test.com/search?search=test&page2”,它返回“test.com/search?” query = test& page2“如何更改它以便返回搜索而不是查询?
html输出为:
<a href="http://test.dev/search?query=test&page=2">2</a>
但我需要的是:
<a href="http://test.dev/search?search=test&page=2">2</a>
编辑: 控制器:
public function searchable(Request $request)
{
// search database, with result, list on page, with links to products,
$products = Product::search($request->search)->paginate(3);
return view('search.index', compact('products', 'request'));
}
use Laravel\Scout\Searchable;
use Illuminate\Database\Eloquent\Model;
use Carbon\Carbon;
class Product extends Model
{
use Searchable;
/**
* Creates searchable index for product model
* @return [type] [description]
*/
public function searchableAs()
{
return 'products_index';
}
}
表格:
{{ Form::open(array('url' => '/search', 'method' => 'GET', 'files' => 'false')) }}
<div class="row">
<div class="col-md-2">
<button type="submit" class="custom-search-button btn btn-lrg btn-primary">Search</button>
</div>
<div class="col-md-10">
<input class="search-bar" type="search" name="search" placeholder="type keyword(s) here" />
</div>
</div>
{{-- <input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/> --}}
{{ Form::close() }}
答案 0 :(得分:1)
您的搜索表单中有一个名为query
的字段。将其名称更改为search
,将控制器中的逻辑调整为使用search
param而不是query
,您就完成了。