Kohana 3 и модули?

Добрый день!


Начинаю изучать kohan-у на примере, написанном другим программистом. Часть сайта, написанная им, работает нормально и в ней все понятно, могу вносить свои изменения/улучшения. Однако, при попытке добавить свой функционал столкнулся со следующей проблемой.


Пробую совместить новый функционал с существующим на сайте «движком» авторизации. Создан контроллер «class Controller_Auth extends Controller» и соответствующая модель «class Model_Auth extends Kohana_Model». Если контроллер вызывается из основного приложения, для проверки прав посетителя, все работает нормально. Но при попытке использовать данный контроллер напрямую, собственно для авторизации, наступаю на грабли — не загружается модуль Database и соответственно все попытки обратится к базе вызывают ошибку.


Для основного приложения указан роутинг:
Route::set('forum', 'forum(/(/page))')-&gt;defaults(array('controller' =&gt; 'forum', 'id' =&gt; 1, 'page' =&gt; 1));<br/>
<br/>
<br/>
В соответствие с этим был добавлен новый роут:<br/>
<code>Route::set('auth', 'auth(/)')-&gt;defaults(array('controller' =&gt; 'auth', 'action' =&gt; 'login'));<br/>
<br/>
<br/>
Форма отправляется по URL: &quot;/auth/login&quot; и POST-ом отправляются данные. Контроллер и соответствующая модель работают, но возникает ошибка при обращении к БД. При этом в списке загруженных модулей, который kohana показывает на странице с ошибкой, видно, что модуль database не загружен.<br/>
<br/>
Посоветуйте, где найти эти чертовы грабли?</code>
  • Вопрос задан
  • 3344 просмотра
Решения вопроса 1
WebSpider
@WebSpider
Похоже вы в конструкторе модели забыли написать parent::__construct(), если переопределяли его.
Какая версия фреймворка, кстати? 3.0 или 3.1? Если 3.1, то модель надо наследовать от класса Model_Database.

P.S. $this->_db надеюсь из модели вызывается? Что показывает var_dump($this->_db)? А вообще следует делать запросы через DB::query(...)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы