奇妙な動作に直面しています。埋め込みフォームを 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' との関係を処理していたのに、どうしてリンクがないのですか?
みんなに感謝します