Я в тупике, я должен упустить что-то основное, любые идеи были бы высоко оценены.Kohana View Model Class не найден
У меня есть новый проект Kohana, который отлично работает с моделями и контроллерами. В этом примере я разделил его на одну очень базовую модель для пользователя и один контроллер с одним действием индекса внутри него.
Я решил использовать KOstache в качестве моего механизма шаблонов, поскольку я слышал о нем хорошие вещи. Я загрузил модуль и подмодуль поставщика, и, похоже, он работает нормально.
Моя проблема arrises при попытке создать новый экземпляр моего зрения модели класса с именем View_User, Кохана бросает * ErrorException [Fatal Error]: Class «View_User» не найден *
Моя структура каталогов выглядит следующим образом
application
|_classes
| |_Controller
| | |_User.php
| |_Model
| | |_User.php
| |_view
| |_user.php
|_templates
|_user.mustache
В проекте есть другие папки, но я считаю, что они являются релевантными.
Мой контроллер, кажется, класс с проблемой
<?php defined('SYSPATH') or die('No direct script access.');
class Controller_User extends Controller {
public function action_index()
{
$renderer = Kostache_Layout::factory();
$view = new View_User;
$view->title = 'This is the test title';
$this->response->body($renderer->render($view));
}
}
Это не работает, и жалуется, что не может найти класс View_User еще в моих классах/просмотра/файла User.php Я ясно есть класс View_User
<?php
class View_User {
}
Теперь я предполагаю, что это какое-то проблема с тем, как я настраиваю KOstache или Кохан, но я не уверен, что я делаю неправильно.
Если я включаю определение класса в нижней части классов/Controller/User.php, тогда все работает так, как ожидалось, он просто не находит класс в другом файле.
Из того, что я прочитал, если автозагрузчик пытается загрузить класс View_User это будет выглядеть в классах/просмотр/user.php
Что я делаю неправильно?
Что Kohana версии вы используете? Я заметил, что вы отметили его 3.2, но я понимаю, почему это не сработает, если это будет 3.3. –
@MichalM Извините, тег был неправильным, я использую 3.3. Это была проблема с именованием каталогов, которая должна была быть классами/View/User.php not classes/view/user.php, поскольку имя класса было View_User not view_user. –
Вот что я думал, отсюда и вопрос. :) –