После обновления с Cake 1.3 до 2.0 I я получаю пропущенные ошибки таблиц для всех моих моделей, которые используют базу данных представления , а не таблицы.Мои модели, использующие таблицы, по-прежнему работают нормально.Изменение этих моделей для использования таблиц решает проблему, но мне нужны представления.
В прошлом это работало, так как этот вопрос показывает ;Представления работали так же, как таблицы.Однако после перехода на Cake 2.0 я получаю:
Ошибка: таблица базы данных myView для модели myModel не найдена
Вот пример класса модели:
class Hauler extends AppModel
{
var $useTable = 'hauler_view';
var $primaryKey = 'id';
var $useDbConfig = 'default';
}
Представление hauler_view
существует и работает в приложении в версии 1.3.Копирование тех же данных из представления в физическую таблицу будет работать, если я настрою модель для чтения этой физической таблицы.
Я подтвердил, что могу получить доступ к представлениям базы данных с помощью необработанных функций Cake SQL, поэтому я могу получить доступ к этим представлениям, просто Модели не видят "таблицы".
Я использую SQL Server 2005 с драйвером sqlsrv, если это имеет значение.На моем сервере установлен собственный клиент SQL Server 2008, который позволяет этой версии торта обращаться к SQL Server.
Есть ли какой-то способ, позволяющий моделям в CakePHP 2.0 использовать представления, а не таблицы?
Я решил эту связанную проблему , поэтому теперь я знаю, что мой драйвер базы данных работает нормально и не является проблемой.