Eu sou novo em laravel. Consegui executar a tabela de dados usando o plugin jquery.
Eu gostaria do processamento do lado do servidor. Encontrei o erro 404 outro dia. Hoje eu encontrei
500 Erro interno do servidor. Chamada para o método indefinido Yajra \ Datatables \ Datatables:
Obrigado por olhar isso.
aqui está a rota ..
index.blade.php
provedor de serviço
apelido
então adesão
índice de função pública (solicitação $ solicitação) {
$categories = Category::all();
$query = Accession::select('*');
//this is for links that will run query according to
//category type
if ($request->input('type')){
switch ($request->input('type')){
case 'Photo':
$query->where('category_id', 2);
break;
case 'Field Notes':
$query->where('category_id', 3);
break;
case 'Audio Recording':
$query->where('category_id', 4);
break;
case 'Instrument':
$query->where('category_id', 5);
break;
case 'Music Scores':
$query->where('category_id', 6);
break;
case 'Video':
$query->where('category_id', 7);
break;
case 'Vertical Files':
$query->where('category_id', 8);
break;
default:
$query->orderBy('id', 'asc')->get();
}
$accessions = $query->orderBy('id')->get();
return view('accessions.index', compact('accessions', 'categories'));
}
//this is for search bar
$search = $request->input('search'); //<-- we use global request to get the param of URI
if($search){
$accessions = Accession::where('groupcountry','LIKE','%'.$search.'%')
->orWhere('description', 'LIKE', '%'.$search.'%')
->orWhere('author', 'LIKE', '%'.$search.'%')
->orWhere('accession_no','LIKE','%'.$search.'%')
->orWhere('year','LIKE','%'.$search.'%')
->paginate(10);
return view('accessions.index', compact('accessions', 'categories'));
}
else{
$accessions = Accession::orderBy('id', 'asc')->get();
return view('accessions.index', compact('accessions', 'categories'));
}
}
Mudei o namespace para usar Yajra \ Datatables \ Facades \ Datatables;
As tabelas agora estão mostrando o erro recebido.
o erro é o erro 200
Tente inspecionar a resposta ajax para obter uma visão melhor do erro. Você também pode precisar verificar se as colunas e o js correspondem à estrutura da tabela. Este é provavelmente um problema de js.
Obrigado pela resposta. Sim, verifiquei a resposta ajax. JSON lint parece bom. O erro 200 desapareceu. Verifiquei as colunas e js e combinei-os com a estrutura da tabela. Até agora, o erro agora é
Vou verificar novamente
404 Not Found é um problema intermitente de dataTables devido a um problema de ambiente ao usar php artisan serve
. Use valet, homestead ou wamp / xampp para evitar esse problema.
@yajra . sim. Atualmente estou usando o xampp. A busca continua
A definição da rota foi revisada. 404 intermitente, mas o ajax retorna dados. Acho que tenho que concordar na questão do meio ambiente.
Implantei o aplicativo ao vivo no heroku. 404 se foi. Portanto, este é um problema ambiental confirmado. Fechando isso. @yajra Obrigado por olhar para o erro. Sua documentação também me ajudou com o botão de juntar à esquerda e visualizar e editar, obrigado.
A solução dada acima funciona apenas para transferir seu projeto para o HTDOCS do seu XAMPP ou www do seu WAMPP ou executá-lo ao vivo
@ marker17 apenas crie seu javascript e web.php da seguinte forma
$(document).ready(function () {
var table = $('#example').DataTable({
dom: 'lBrtip',
processing: true,
serverSide: true,
ajax: {
'url':'{!!url("ajax/chapter/list")!!}',
'type': 'POST',
'headers': {
'X-CSRF-TOKEN': '{{ csrf_token() }}'
}
},
orderCellsTop: true,
fixedHeader: true,
"columns": [{
data: 'DT_RowIndex',
orderable: false,
searchable: true
},
{data: 'stream_id'},
{data: 'course_id'},
{data: 'subject_id'},
{data: 'chapter_name'},
{data: 'status'},
{data: 'edit_delete',orderable: false},
],
});
});
E em web.php
Route :: any ('ajax / capítulo / lista', 'YourController @Method ');
este código funcionou para mim.
@ marker17 apenas crie seu javascript e web.php da seguinte forma
$(document).ready(function () { var table = $('#example').DataTable({ dom: 'lBrtip', processing: true, serverSide: true, ajax: { 'url':'{!!url("ajax/chapter/list")!!}', 'type': 'POST', 'headers': { 'X-CSRF-TOKEN': '{{ csrf_token() }}' } }, orderCellsTop: true, fixedHeader: true, "columns": [{ data: 'DT_RowIndex', orderable: false, searchable: true }, {data: 'stream_id'}, {data: 'course_id'}, {data: 'subject_id'}, {data: 'chapter_name'}, {data: 'status'}, {data: 'edit_delete',orderable: false}, ], });
});
E em web.php
Route :: any ('ajax / capítulo / lista', 'YourController @Method ');
este código funcionou para mim.
salve meu dia
Comentários muito úteis
404 Not Found é um problema intermitente de dataTables devido a um problema de ambiente ao usar
php artisan serve
. Use valet, homestead ou wamp / xampp para evitar esse problema.