1

奇妙な動作に直面しています。埋め込みフォームを 1 対 1 の関係で保存すると、外部キーが保存されません。

プロフィールフォームを埋め込むシンプルな登録フォームです

登録フォームを作成しました:

class crRegisterForm extends sfGuardRegisterForm{

public function configure()
{
    $this->validatorSchema['first_name']->setOption('required', true);
    $this->validatorSchema['first_name']->setMessage('required', 'pls enter your Firstname');   
    $this->embedRelation('Profile');
}}

私のactionClassで

public function executeRegister(sfWebRequest $request)
{
  $this->form = new crRegisterForm();

  if ($request->isMethod('post'))
  {
    $this->form->bind($request->getParameter($this->form->getName()));
    if ($this->form->isValid())
    {
      $user = $this->form->save();
      $user->email_address = $user->username;
      $user->save();
    }
  }

このコードは明らかにユーザーを私のデータベースのプロファイルに保存しますが、プロファイル user_id は null ですか? symfony が 'embedRelation' との関係を処理していたのに、どうしてリンクがないのですか?

みんなに感謝します

4

0 に答える 0