[英]Global Search not working with laravel
大家好,我试图为我的proyect进行特定搜索,但它不起作用,我使用的是我的代码Php:
public function todos_productos($empresa_id, Request $request)
{
$empresa = Empresa::find($empresa_id);
$productos = $empresa->productos()->with('producto_nombre', 'producto_nombre.seccion', 'producto_nombre.linea');
return Datatables::of($productos)
->filter(function ($query) use ($request) {
if ($request->has('codigo')) {
$query->where('producto_nombre.codigo', 'like', "%{$request->get('codigo')}%");
}
})
->make(true);
}
我的js
$(document).ready(function () {
empresa = $('#empresa_id').val()
tablaBusqueda = $('#postTable').DataTable({
processing: true,
serverSide: true,
ajax: {
url: 'api/productos/todos/' + empresa,
data: function (d) {
d.codigo = $('input[name=consulta_producto_codigo]').val()
d.linea = $('select[name=consulta_producto_linea]').val()
d.seccion = $('select[name=consulta_producto_seccion]').val()
}
},
columns: [
{data: 'codigo', name: 'producto_nombre.codigo'},
{data: 'descripcion', name: 'producto_nombre.descripcion'},
{data: 'existencias', name: 'existencias'},
{data: 'precio', name: 'precio'},
{data: 'stock_minimo', name: 'stock_minimo'},
{data: 'stock_maximo', name: 'stock_maximo'},
{data: 'producto_nombre.linea.nombre', name: 'producto_nombre.linea.nombre'},
{data: 'producto_nombre.seccion.nombre', name: 'producto_nombre.seccion.nombre'}
],
'language':
{
'url':
'../plugins/dataTables.spanish.lang'
}
})
})
问题是,当我尝试按codigo(code)搜索时,它说没有producto_nombre.codigo列,我只用codigo代替了它,但也没有用,有人知道为什么吗?
$empresa
是单个Empresa
模型实例。 $productos
是(假定) Producto
模型的雄辩的集合,具有两个急切加载的关系producto_nombre
和producto_nombre.seccion
。 任何查询都将在(假定) productos
表而不是您的关系表上运行。
这是限制急切负载的方法: https : //laravel.com/docs/5.6/eloquent-relationships#constraining-eager-loads
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.