Вызов представления базы данных в Yii с использованием активной записи

#php #mysql #activerecord #yii

#php #mysql #activerecord #yii

Вопрос:

Я понимаю, как запрашивать таблицу с помощью среды active record в Yii. Я не могу найти документацию для вызова представления mysql. Кроме того, я знаю, как смоделировать таблицу в active record с помощью инструмента gii, но есть ли способ сделать это для представления базы данных?

Комментарии:

1. Это должно нормально работать так же, как и с таблицами. Просто используйте имя представления при создании модели.

2. Ну, это была глупая оплошность. Спасибо. Это сработало. Ответьте на вопрос, и я отдам вам должное.

Ответ №1:

У меня нет такого опыта, и этот комментарий для тех, у кого возникли проблемы.

Используя представление mysql с некоторыми объединениями и вычислениями, я получаю следующую ошибку..

app\models\db\WarComplete must have a primary key.

Я решил это, добавив…

 public static function primaryKey()
{
    return ['id'];
}
  

… для переопределения моей модели.

Ответ №2:

Это должно нормально работать так же, как и с таблицами. Просто используйте имя представления при создании модели.

Пожалуйста, прочитайте ответ Джошуа и узнайте, как добавить первичный ключ в модель ООП для представлений.

Комментарии:

1. Не уверен, почему этот ответ отмечен как правильный и имеет 7, потому что активной модели нужен первичный ключ для работы по дизайну, а у вас его не будет в БД, вы можете попробовать совет Джошуа, хотя

2. @open-ecommerce.org просто потому, что Джошуа завершил ответ 4 года спустя, и версии Yii были обновлены.

3. Не работает, модели нужен первичный ключ, решение Джошуа работает