我如何在 laravel 4.2 中搜索搜索结果

how to i search on search results in laravel 4.2

有一个简单的页面,我可以在其中按关键字显示搜索结果。 但现在我想按某些标准搜索这些结果。

我该怎么做

搜索控制器

class SearchController extends \BaseController {

    public function search() {
        $keyword = Input::get('header-search-query');

        if (empty($keyword)) {
            $product = Product::paginate(10);
            $this - > setModel($product);
            return View::make('product.listbykeyword') - > with('products', $product);
        }

        return View::make('product.listbykeyword') - > with('products', Product::like('title', $keyword) - > paginate(10));
    }

    public function advance() {
        //what should i put here
    }
}

查看

@foreach($products as $product)
 <div class="media">
    <div class="media-left" style="width:16%;">
        <a href="{{ URL::to('image/'.$product->productImage()->first()['image']) }}">
        {{ HTML::image('image/'.$product->productImage()->first()['image'],'no-image',array('class'=>'media-object','height'=>'100','width'=>'100'))}}
         </a>
     </div>
 <div class="media-body">
     <h4 class="media-heading">{{ HTML::link('/product/'.$product->id,$product->title) }}</h4>
     <p>{{substr($product->description,0,85)}}</p>
     <p>Price : {{$product->price}} TK</p>
     <p class="time">{{$product->created_at->diffForHumans()}}
          <b>Near</b> {{$product->location}}
     </p>
  </div>
 </div>
 <hr></hr>
@endforeach

因为在你的情况下你确实不能使用 Datatables 因为它是一个 public 搜索我建议你使用 ajax 调用按键更改事件。

第 1 步:

从您的文本框中检测按键更改

<input id='myTextbox1' type='text'/>
$('#myTextbox1').on('input', function() {
    alert('Text1 changed!');
});

这是fiddle

第 2 步:

将 ajax 页面调用到您的控制器

 $.ajax({
        type: "POST",
        url : "yourcontroller",
        data : dataString,
        success : function(data){
        $("#result").html(data);                           
        }
  });

在您的页面中放置一个名为 result 的 div。

因此,第一次您将从用于搜索的默认控制器获得结果,然后下次当您在 myTextbox1 中键入文本时,它会调用控制器 yourcontroller 并在你的控制器你应该得到 datastring 和 return 匹配输出到视图。

希望对您有所帮助。