Страница 1 из 1

native $model->tableName()? ActiveRecord

Добавлено: 2018.01.17, 18:18
lgXenos
Доброго
Я увидел, что встроенной возможности нет. И что если дописать некий метод в мою модель, который вернет static::tableName(), то задача решается
Но... это единственный выход?
И с чем связано такое ограничение, что имя таблицы можно спросить только у класса. А у записи, из какой она таблицы, спросить нельзя?
С тем, что запись ничего не должна знать о таблице и это другой уровень абстракции?

Просто я сделал некий конфиг-правило обработки полей у таблиц. И выходит, что имея запись - я не знаю, какое правило использовать.

Код: Выделить всё

$magicArr = [
	\common\models\Article::tableName() => [
		'....' => function(){.....}
	]
]

Re: native $model->tableName()? ActiveRecord

Добавлено: 2018.01.17, 18:49
ElisDN
$model::tableName()

Re: native $model->tableName()? ActiveRecord

Добавлено: 2018.01.17, 19:24
zelenin
шел третий год на форуме...

Re: native $model->tableName()? ActiveRecord

Добавлено: 2018.01.17, 19:52
lgXenos
zelenin писал(а): 2018.01.17, 19:24 шел третий год на форуме...
Саш, все иногда перерабатывают и тупят
ElisDN писал(а): 2018.01.17, 18:49 $model::tableName()
Спасибо, Дим, за быстрый ответ
Стыдно, что про такой вариант подумал лишь когда в метро сел