Я не следую, как именно я определяю отношения в RedBean, не на лету.Определения отношений RedBean
У меня есть user
, который может иметь родителя user
, который считается employer
. На противоположной стороне user
может иметь employees
, которые также являются users
.
Как бы я решил определить это?
Я хотел бы интерфейс, чтобы быть что-то в этом роде:
$user = R::load('user', $id);
var_dump($user->hasEmployees); // show all employees
var_dump($user->ownEmployer); // show my employer
Но, похоже, я должен определить их каждый раз, как это:
$user->hasEmployees = R::findAll('user', 'employer_id = ?', array($user->id));
$user->ownEmployer = R::load('user', $user->employer_id);
Какой вид поражений цель создания динамической системы. Поскольку нет реальной модели (или не очень обширной), я предполагаю, что вы создаете отношения один раз и используете их, и RedBean знает, как это сделать в следующий раз?
Или мне нужно определить эти отношения всякий раз, когда я обращаюсь к модели? (Могу ли я использовать метод dispense() в модели в этом случае?)
Если да, то как это работает?
Что мне не хватает?
Спасибо!
Должен ли я «создавать отношения» при каждом использовании? Или я могу предположить, что $ employer-> ownEmployeeList принесет мне заполненный список, если я получу его в другом месте, и у него есть соответствующие данные в базе данных? – casraf
После того, как ваши таблицы заполнены, $ employer-> ownEmployeeList возвращает массив сотрудников. Вам не нужно воссоздавать отношения. – kekub