Схема YML доктрины для представления отношений из нескольких столбцов - PullRequest
0 голосов
/ 15 ноября 2011

У меня есть таблица со следующими полями:

Father_id child_id

Они оба должны указывать на таблицу "sfGuardUser".Я пытаюсь определить это отношение в моих файлах схемы следующим образом:

UsersHierarchy:
  tableName:                      users_hierarchy
  columns:
    father_id:                    {type: integer(9), primary: true}
    child_id:                     {type: integer(9), primary: true}
  relations:
    sfGuardUser:
      local:                      father_id
      foreign:                    id
    sfGuardUser:
      local:                      child_id
      foreign:                    id

Но в результате только один из столбцов становится связанным с таблицей sfGuardUser.Поэтому вопрос заключается в том, как сделать так, чтобы оба столбца указывали на один и тот же столбец в таблице sfGuardUser?

1 Ответ

2 голосов
/ 15 ноября 2011

Это потому, что у вас одинаковое имя для каждого отношения.Попробуйте:

relations:
    sfGuardUserFather:
      class:                      sfGuardUser
      local:                      father_id
      foreign:                    id
    sfGuardUserChild:
      class:                      sfGuardUser
      local:                      child_id
      foreign:                    id

Тогда вы можете получить доступ к своим отношениям с:

$your_users_hierarchy_obj->sfGuardUserFather;
$your_users_hierarchy_obj->sfGuardUserChild;
...