variable ternario pasar insertar funciones datos como php laravel join using

php - ternario - pasar variable laravel a javascript



Laravel 5. Uso del operador USING (1)

Entonces, la respuesta es - es imposible.

Laravel no es compatible con esta funcionalidad, lo cual es realmente triste.

Lo soluciono en el código fuente de Laravel, mi PETICIÓN DE PEDIDO aquí - https://github.com/laravel/framework/pull/12773

Traté de encontrarlo durante mucho tiempo, y no puedo creer que Laravel no tenga esta funcionalidad.

Entonces, puedo escribir:

select * from a join b where a.id = b.id

o más hermoso:

select * from a join b using(id)

El primer caso es simple para Laravel:

$query->leftJoin(''b'', ''a.id'', ''='', ''b.id'')

¿Pero cómo escribir el segundo caso? Espero que sea simple y breve, como:

$query->joinUsing(''b'', ''id'')

Pero no hay tal método y no puedo encontrarlo.

PD: es posible que la respuesta sea muy simple, es difícil de encontrar con la palabra "usar", porque está en todas partes.

ACTUALIZAR

Voy a profundizar en la fuente, intentando hacer un alcance o pasar una función para unirme, pero incluso dentro de esta función no puedo hacer nada con esta $ consulta. Ejemplo:

public function scopeJoinUsing($query, $table, $field) { sql($query->join(/DB::raw("USING(`{$field}`)"))); // return // inner join `b` on USING(`id`) `` // yes, with "on" and with empty quotes sql($query->addSelect(/DB::raw("USING(`{$field}`)"))); // return // inner join `b` USING(`id`) // but in fields place, before "FROM", which is very logic :) }

Así que incluso si olvidas el alcance, no puedo hacer esto en DB :: raw (), así que es imposible ... La primera vez que veo algo imposible en Laravel.