Laravel - Filtrar por precio Laravel Query Scopes

 
Vista:
sin imagen de perfil
Val: 6
Ha disminuido 1 puesto en Laravel (en relación al último mes)
Gráfica de Laravel

Filtrar por precio Laravel Query Scopes

Publicado por Santiago (4 intervenciones) el 27/11/2019 16:50:16
Estoy haciendo un filtro para búsqueda de productos, he logrado filtrar por Genero y Categoría (Strings)... sin embargo no puedo hacerlo por precio (Decimal).
¿Cuales son mis inconvenientes?
1) No se si estoy manejando el tipo de dato correcto en la base de datos (Decimal)
2) No se como comparar las variables numéricas dentro del Query Scope
3) No se si estoy manejando bien el uso de 2 parametros (precioMin , precioMax) en el Query Scope.

Este es mi codigo:

Producto.php

1
2
3
4
5
public function scopePrecio($query, $precioMin, $precioMax)
{
    if($precioMin; $precioMax)
    return $query->where('precio', '>', '$precioMin')->and('precio', '<', '$precioMax');
}


ProductoController.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public function index(Request $request)
{
    $titulo = $request->get('titulo');
    $precio = $request->get('precio');
    $genero = $request->get('genero');
    $categoria = $request->get('categoria');
 
    return view('productos.index', [
    'productos' => Producto::latest()
    ->titulo($titulo)
    ->precio($precio)
    ->genero($genero)
    ->categoria($categoria)
    ->paginate(17)
    ]);
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder