plantillas - usar blade sin laravel
Laravel: dinámico donde la cláusula con elouquent. (4)
Estoy llamando a la URL con parámetros de búsqueda que son dinámicos. ¿Cómo podría formarme una consulta elocuente adecuada?
En teoria:
- consulta
- consulta dónde (someParam1)
- consulta dónde (someParam2)
- orden de consulta by (someParam3)
- consulta obtener
Necesito este tipo de estructura para poder usar la cláusula where si existe param . Si hay alguna otra manera en Laravel, por favor hágamelo saber.
Es fácil con Laravel. Solo haz algo como esto:
$query = User::query();
if ($this == $that) {
$query = $query->where(''this'', ''that'');
}
if ($this == $another_thing) {
$query = $query->where(''this'', ''another_thing'');
}
if ($this == $yet_another_thing) {
$query = $query->orderBy(''this'');
}
$results = $query->get();
Puede pasar valor dinámico por debajo del ejemplo
$user_auctions = $this->with(''userAuctions'')
->where(''users.id'', ''='', $id)
->get();
Vine aquí desde Google. Si va a realizar una iteración de más de 5 declaraciones if, es más efectivo usar una instrucción switch
if(empty($request->except(''_token'')))
return ''false'';
$models = Vehicle::query();
$request_query = $request->all();
$year_switch = false;
foreach ($request_query as $key => $field_value){
if($field_value != ''any''){
switch($field_value){
case ''X'':
case ''Y'':
$year_switch = true;
break;
case''Z'':
//Dynamic
$models->where($key,''LIKE'', $field_value);
break;
}
}
}
You can use like this
$validateUserDetail = User::query();
if (!empty($userDetails[''email''])) {
$validateUserDetail->whereemail($userDetails[''email'']);
}if (!empty($userDetails[''cellphone''])) {
$validateUserDetail->wherecellphone($userDetails[''cellphone'']);
}
$validateUserDetail->select(''username'');
$validateUserDetail->get()