У меня есть простое приложение crud в Kohana 3.3, с несколькими различными типами данных или моделей. Скажем, эти модели:Kohana 3.3 структура таблицы
- Пользователи
- Места
- Навыки
У меня есть таблица для каждой из этих моделей, но таблицы не связаны друг с другом каким-либо образом , Я пытался определить отношения с ORM, но я все еще смущен. В качестве примера:
У меня есть несколько мест. В каждом месте есть много пользователей.
Я знаю, что я могу определить, что с:
class Model_Location extends ORM {
/**
* A location has many users
*
* @var array Relationships
*/
protected $_has_many = array(
'users' => array('model' => 'user'),
);
}
Как я понимаю, я могу подключить два, ссылаясь на идентификатор родительского местоположения из строки в таблице пользователей. Однако, что, если каждый пользователь может принадлежать ко многим местоположениям? Должен ли я хранить сериализованные данные во внешнем ключе? Должен ли я создать «справочную таблицу»? Если да, то как это должно выглядеть?
Как я могу, например, запросить базу данных для местоположения и всех пользователей, подключенных к ней? Является ли ORM правильной технологией для такого рода вещей?
Ну ладно, спасибо. –