【发布时间】:2015-03-04 18:38:52
【问题描述】:
我想创建功能性搜索框来从某个表中查询数据。
数据库详情:
- 表名:库存
- 主键:id
- 唯一索引:sku
- 大小 = 120, 000 行
搜索框详情:
刀片/HTML
{{ Form::open(array('action' => 'UrlController@query', 'method' => 'get')) }}
<input autofocus name="search" id="search" placeholder="Enter Catalog # " type="text" />
<span class="pull-right">
{{ Form::submit('Search', array('class' => 'btn btn-success btn-sm')) }}
</span>
{{ Form::close() }}
如您所见,我的搜索框名称是search
控制器功能:
public function query() {
// grab GET parameters
$search = Input::get('search');
// apply search filter
if ($search){
//$inventories = Inventory::all(); # It's works if I do this
$inventories = Inventory::where(function($inventories) use ($search){
$inventories->where('search', 'like', '%'.$search.'%');
});
return View::make('inventories.index')
->with('inventories', $inventories);
}else
return View::make('inventories.index');
}
最后:
我无法显示任何结果。
我做错了吗?这里:
$inventories = Inventory::where(function($inventories) use ($search){
$inventories->where('search', 'like', '%'.$search.'%');
});
在 Laravel 中完成此类任务的最有效方法是什么?
【问题讨论】:
标签: php mysql laravel laravel-4