При использовании NotORM, какое правильное соглашение об именах таблиц следует использовать для отношения один-к-одному?

В настоящее время я использую библиотеку NotORM PHP в своем проекте. Для правильной работы библиотека требует от вас принятия следующего соглашения об именах в базе данных, на которой вы собираетесь его использовать:

{
   Tables => table
   Primary keys => id
   Foreign keys => table_id (target table)
   Table prefix => (none)
}

Если соблюдается это соглашение, библиотека позволяет вам (помимо прочего) делать следующее:

//$db NotORM object
$computer = $db->computers[0]; // where 0 is computers_id (int)
//**this line below is what I want to focus on for this question**
$employee = $computer->employees;
echo $employee["name"];

Теперь выше будет предполагать, что у нас есть следующие таблицы, связанные один-ко-многим:

computers => { 
                 id
                 ...
                 employees_id // fk
             }

employees => {
                 id
                 ...
             }

Строка, которую я выделил во втором блоке кода, позволяет нам перейти от ссылочной таблицы к ссылочной таблице с помощью внешнего ключа.

Если бы у нас были вышеупомянутые таблицы, связанные взаимно-однозначным отношением (без каких-либо внешних ключей, которые можно найти ни в одной из таблиц), как бы мы достигли той навигационной способности, показанной выше? Правильно ли я предполагаю, что у нас должна быть двунаправленная навигация при наличии отношений один-к-одному?

0 ответов

Другие вопросы по тегам