【问题标题】:Search and Pagination Laravel 4搜索和分页 Laravel 4
【发布时间】:2014-11-02 08:47:59
【问题描述】:

我有一个问题,我想使用表单进行搜索并使用分页。问题是当我更改页面时,出现错误:

模型 [Aluno] 没有查询结果。

我的控制器

Route::post(
'alunos/busca', 
array(
    'as' => 'alunos.busca', 
    'uses' => 'AlunosController@busca'
)

);

我的控制器

public function busca()
{
   $search = Input::get('q');
   $alunos = Aluno::where('curso', $search)->paginate(1);
   return View::make('alunos.index', compact('alunos', 'search'));
}   

我的看法:

<form method="post" action="{{ URL::to('alunos/busca') }}">
<input class="input-xxlarge" name="q" type="text" placeholder="Search...">
<div class="control-group">
    <div class="controls">
        <input type="submit" class="btn" id="submit" value="Submit" />
    </div>
</div> 
<div class="divPagination">
   {{ $alunos->links() }}
</div>

我需要帮助..

对不起我的英语

【问题讨论】:

    标签: php search laravel pagination


    【解决方案1】:

    问题是当您单击下一页时,它不记得您刚刚输入的搜索参数,基本上是$q = null;,这将导致错误。

    【讨论】:

    • 好的..你有什么解决办法吗?
    • 将 $q 传回您的视图并检查它是否存在,将输入值设置回该值。 &lt;?php $q = isset($q) ?: null;?&gt;&lt;input name="q" value="{{{$q}}}"&gt;
    【解决方案2】:

    我认为最好的解决方案是下一个:

    1. 复制此表单并将其粘贴到您想要的任何位置:

      {{Form::open(array('url' => 'alunos/busca','method' => 'get'))}}
      {{Form::text('q', null , array('placeholder' => 'Search...','class' => 'input-xxlarge'))}}
      {{Form::submit('SEARCH',array('class' => 'btn','id' => 'submit'))}}
      {{Form::close()}}
      
    2. routes.php

      Route::get('alunos/busca', function() {
         $search = Input::get('q');
         $alunos = Aluno::where('curso', 'LIKE', '%'.$search.'%')->paginate(15);
         return View::make('alunos.index')
          ->with('alunos', $alunos);
      });
      
    3. 现在,在你看来 app/views/alunos/index.blade.php

      @if(!$alunos->isEmpty())
         @foreach($alunos as $aluno)
            {{$aluno->subject}}
         @endforeach
      
       {{$alunos->links()}}
      
      @else
         <h1> No results </h1>
      @endif
      
    4. 随心所欲地改变它并享受它

    【讨论】:

      猜你喜欢
      • 2015-02-01
      • 2021-03-24
      • 2014-03-07
      • 1970-01-01
      • 2017-02-24
      • 2019-05-06
      • 2015-03-14
      • 2017-01-12
      • 1970-01-01
      相关资源
      最近更新 更多