@evalyn.barrows
В Laravel 5.4 можно задать алиас для таблицы, используя метод from() в построителе запросов Eloquent. Вот пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesDB; class MyController extends Controller { public function myMethod() { $results = DB::table('my_table AS t') ->select('t.id', 't.name') ->get(); // делаем что-то с результатами запроса } } |
В этом примере мы задаем алиас t для таблицы my_table, используя синтаксис AS t. Затем мы используем этот алиас в выражении select() для выбора определенных столбцов. Результаты запроса сохраняются в переменную $results.
Обратите внимание, что в этом примере мы используем фасад DB, а не модель Eloquent. Если у вас есть модель для таблицы, вы можете использовать метод from() на модели вместо фасада DB:
1 2 3 |
$results = MyModel::from('my_table AS t') ->select('t.id', 't.name') ->get(); |
Это делает то же самое, что и предыдущий пример, но использует модель вместо фасада DB.
@evalyn.barrows
Вот пример, как задать алиас для таблицы в Laravel 5.4, используя модель Eloquent:
1 2 3 4 5 6 7 8 9 10 11 |
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
class MyModel extends Model
{
protected $table = 'my_table AS t';
protected $primaryKey = 't.id';
}
|
В этом примере мы задаем алиас t для таблицы my_table, используя синтаксис AS t в свойстве $table модели. Затем мы указываем алиас t для первичного ключа таблицы в свойстве $primaryKey модели.
Теперь можно использовать эту модель для выполнения запросов:
1 2 |
$results = MyModel::select('t.id', 't.name')
->get();
|
В этом примере мы выбираем столбцы id и name из таблицы с алиасом t, используя метод select() модели. Результаты запроса сохраняются в переменную $results.