Я не уверен, что мне нужно сделать, чтобы получить динамические имена таблиц.Laravel 4: Динамические имена таблиц с помощью setTable()
Рассмотрим следующую модель (таблица 'тест' не существует):
<?php
// app/models/Test.php
class Test extends Eloquent {
}
, а затем, если я (таблица 'поля' существует):
<?php
// app/routes.php
$test = new \Test;
$test->setTable('fields');
$data = $test->find(1);
dd($data);
Я получаю сообщение об ошибке:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'test.tests' doesn't exist (SQL: select * from `tests` where `id` = ? limit 1) (Bindings: array (0 => 1,))"
Обратите внимание, что установка имени таблицы из тестовой модели работает очень хорошо.
L4 на самом деле использует метод setTable(), который я бы хотел, в конструкторе vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations.Pivot.php, хотя я просто не мог получить он должен работать, следуя этому примеру.
Спасибо за помощь.
Вы используете Laravel 3? – msturdy
Кто-нибудь решил это? –
Вы когда-нибудь находили решение? – SPillai