我的标签有简单的表格。
路线
route::resource('admin/tags','TagController');
控制器:
public function index()
{
$tags=Tag::latest()->paginate(5);
return view('products.tag',compact('tags'));
}
查看:
@extends('admin.index')
@section('content')
...html code...
<table class="table">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">tag name</th>
<th scope="col">tag slug</th>
<th scope="col">description</th>
</tr>
</thead>
<tbody>
@foreach($tags as $tag)
<tr>
<th scope="row">{{$tag->id}}</th>
<td>{{$tag->tag_name}}</td>
<td>{{$tag->tag_slug}}</td>
<td>@{{$tag->tag_description}}</td>
</tr>
@endforeach
</tbody>
</table>
<div class="paging site-pagination">
{{$tags->links()}}
</div>
...html code...
@endsection
现在,这段代码就像魅力一样,但我想从ajax获取数据,然后传递给我的视图。
我的ajax代码:
$(document).ready(() => {
get_data()
function get_data() {
$.ajax({
type: 'GET',
url: '/admin/tags',
beforeSend: function () {
console.log('before')
},
success: function (data , status , xhr){
console.log(data);
console.log(status );
console.log(xhr);
},
complete: function (data) {
console.log('complete')
},
error: function (data) {
console.log('error')
},
});
}
)}
嗯。现在我的成功功能是工作并获取我的HTML。
但我只想获得tags
变量并将其传递给查看。
我改变了我的控制器:
//return view('admin.pages.products.tag',compact('tags'));
return response()->json($tags);
现在我的标签视图是:
{
"current_page": 1,
"data": [
{
"id": 46,
"tag_name": "EbTLzDikpS",
"tag_slug": "mKXcpVOF3L",
"tag_description": "05HMeVazYO",
},
...
{
"id": 5,
"tag_name": "T4uvmukgZA",
"tag_slug": "fpWwimnnIk",
"tag_description": "A0nfZ4POHR",
}
],
"first_page_url": "http://127.0.0.1:8000/admin/tags?page=1",
"from": 1,
"last_page": 10,
"last_page_url": "http://127.0.0.1:8000/admin/tags?page=10",
"next_page_url": "http://127.0.0.1:8000/admin/tags?page=2",
"path": "http://127.0.0.1:8000/admin/tags",
"per_page": "5",
"prev_page_url": null,
"to": 5,
"total": 46
}
现在,即使我删除了我的ajax功能,我的视图也不会改变。
所以我再次改变我的控制器:
return view ('admin.pages.products.tag', compact('tags'))->render();
仍然无效。
答案 0 :(得分:0)
您忘记为路线指定function(method)
的名称:
route::resource('admin/tags','TagController@index');
您的代码看起来像API,但如果您在route / web.php中,则可以使用api/admin/tags
如果问题仍然存在,请更改功能:
public function index()
{
$tags=Tag::latest()->paginate(5);
return response()->json($tags);
}
&#13;