Я пытаюсь сделать простой фильтр для индексации на мой взгляд с помощью <option>
. по умолчанию в представлении индекса будут показаны все данные, но я хочу, чтобы представление показывало данные на основе созданного мной фильтра и отображало их на той же странице.
это индекс (включая <option>
) view
<form method="get" action="/">
<select name="tag" id="tag_select">
<option value=""> -pilih- </option>
<option value="diproses">diproses</option>
<option value="selesai">selesai</option>
</select>
<script src="{{ asset('js/tag.js') }}" charset="utf-8"></script>
<input type="submit" name="submit" value="cek">
{{csrf_field()}}
<input type="hidden" name="_method" value="get">
</form>
<?php foreach ($blogs as $blog ): ?>
<tr><td><b>Tanggal: </b></td><td>{{ $blog -> created_at}}</td><br>
<tr><td><b>SI: </b></td><td>{{ $blog -> sistem}}</td><br>
<tr><td><b>Subjek:</b></td><td><a href="/{{ $blog -> id}}"> {{ $blog -> title }}</a></td></tr>
<br>
<tr><td><b>Oleh: </b></td><td>{{ $blog -> nama}}</td></tr> <br>
<tr><td><b>Status: </b></td><td>{{ $blog -> tag}}</td></tr> <br> // i want to filter the data based on this
<hr>
<?php endforeach; ?>
это метод фильтрации
public function filter(Request $request)
{
$blogs = DB::table('blogs')->where('tag', $request -> tag)->get();
return view('koding', ['blogs' => $blogs]);
}
кроме того, это мой контроллер индекса с его маршрутом
Route::get('/admin', 'HomeController@admin')->name('admin');
.
public function admin()
{
$blogs = blog::paginate(10);
return view('koding', ['blogs' => $blogs]);
}
Не могли бы вы, ребята, сказать мне, что не так и каков путь для метода фильтрации? спасибо