0
laravelのドロップダウンを使用してテーブルをフィルタリングしたいのですが、それはうまくいきましたが、作成フォームで新しいレコードを作成する場合は、フォームビューを作成するのではなく、getid関数を使用します。laravelのドロップダウンリストを使用してテーブルをフィルタリングする方法
ここに私のコードここ
<form method="GET">
<div id="sample-table-3">
<label>Display as Category</label>
<select name="category_id" id="category_id">
<option value="0">Show All</option>
@foreach($categories as $category)
<option value="{{ $category->id }}">{{ $category->category }}</option>
@endforeach
</select>
</div>
</form>
javascriptの
<script type="text/javascript">
$(document).ready(function(){
$('#category_id').on('change', function(e){
var id_category = e.target.value;
$.get('{{ url('news')}}/'+id_category, function(data){
console.log(id_category);
console.log(data);
$('#news_data').empty();
$.each(data, function(index, element){
$('#news_data').append("<tr><td>"+element.title+"</td><td>"+element.file+"</td>"+
"<td>"+element.content+"</td><td>"+element.like+"</td><td>"+element.view+"</td><td>"+find('.action')+"</td></tr>");
});
});
});
});
</script>
と、この私のコントローラ
public function index(Request $request)
{
$news = News::paginate(10);
$categories = Category::all();
return view('news.news')
->with(compact('news'))
->with(compact('categories'));
}
public function create()
{
$news = News::all();
/* Get Category */
$categories = Category::all();
//dd($categories);
return view('news.create')
->with(compact('news'))
->with(compact('categories'));
}
public function getid($id_category){
$categories = Category::all();
if($id_category==0){
$news = News::all();
}else{
$news = News::where('category_id','=',$id_category)->get();
}
return $news;
}
と、この私のルート
Route::get('/news/{id_category}', '[email protected]');
ルート::グループ([ 'ミドルウェア' => 'ウェブ']、関数(){
Route::resource('news', 'NewsController', ['except' => ['getid']]);
Route::resource('category', 'CategoryController');
})。
あなたのルート 'ルートのようなものに
変更を::( '/ニュース/ {id_category}'、 'NewsController @のgetId')を得る;'おそらく 'show'ルートと衝突されます「NewsController」の'Route :: get( '/ news/getid/{id_category}'、 'NewsController @ getid'); ' – linuxartisan
これは役に立ちましたか?D – rafitio
私は自分のコメントを回答に変換しました。同意してください。 – linuxartisan