0

私はプロジェクトに symfony を使用していますが、ある時点でスキーマの構築に行き詰まりました。スキーマには、自分自身または管理者が作成できる 1 つのテーブル ユーザーがあり、ユーザー ID は sfGuardUser に格納されています... schema.yml でそれらの間の関係を作成するにはどうすればよいですか?

私はこのフィールドを持っています:

テーブルX

sf_guard_user_id: {type: integer}
sf_guard_user_id_cs: {type: integer}

最初の ID は作成時に取得した ID で、2 番目は管理者が作成した場合の ID です。基本的に、sfGuardUser の id フィールドを tableX で 2 回使用しますが、この 2 つの関係を schema.yml で作成することはできません。関係を作る方法を知っている人はいますか?

4

1 に答える 1

0

簡単です。例えば:

CoolTable:
  actAs:
     Timestampable: ~
  columns:
    sf_guard_user_id:    { type: integer() }
    sf_guard_user_id_cs: { type: integer() }
  relations:
    User:    { local: sf_guard_user_id, foreign: id, class: sfGuardUser }
    UserCs:  { local: sf_guard_user_id_cs, foreign: id, class: sfGuardUser }

重要な点は、リレーションのクラスを指定することです。

于 2012-08-13T20:40:04.753 に答える