Я только начал с версии 3 Kohana Framework.Я немного поработал с $ _has_many и т. Д.
Теперь у меня есть таблицы страниц.Первичный ключ - это pageID.В таблице есть столбец с именем parentPageID.Теперь я хочу создать модель ORM, которая при приеме, подобном этому, $page->parent->find()
возвращает страницу, указанную parentPageID.
У меня уже есть следующее:
// Settings
protected $_table_name = 'pages';
protected $_primary_key = 'pageID';
protected $_has_one = array(
'parent' => array(
'model' => 'page',
'foreign_key' => 'parentPageID',
),
);
Но это не работает, он просто возвращает первую страницу из таблицы.Последний запрос говорит:
SELECT `pages`.* FROM `pages` ORDER BY `pages`.`pageID` ASC LIMIT 1
Кто-нибудь знает, как решить эту проблему?
Я знаю, что это может: $parent = $page->parent->find($page->parentPageID);
, но это должно быть и может быть чище (я думаю).
Решено , см. Мой ответ ниже.