views:

70

answers:

1

Hi, I've added a profile class to sfDoctrineGuard, and in the admin I'm trying to edit the profile part while editing the user, using embed forms as explained here:

http://www.symfony-project.org/blog/2008/11/12/call-the-expert-customizing-sfdoctrineguardplugin alt text

Editing users works, but when I add

"User": [username, password, password_again, Profile]

All I get is an error message :

Widget "Profile" does not exist.

Any help would be appreciated. Is the blog post out of date ?

+1  A: 

There's a nice neat way to do this now.... Are you using 1.3 or 1.4?

In UserForm:

public function configure()
{
    $this->embedRelation('Profile');
}

Assuming that your schema is set up correctly, this will embed the form.

Darragh
I'm using version 1.4
Manu
I've added the line to configure() of /lib/form/doctrine/sfDoctrineGuardPlugin but it doesn't appear to change anything to the form. No error messages either.
Manu
Thanks to whoever downvoted me. Next time a reason would be nice... @Manu - You are embedding the Profile form into your User form, so you should add this line to your UserForm class. I suspect that you might have an issue with your schema if this does not work. Have a look and make sure everything is in order.
Darragh
I may have something wrong in my schema, but in the fixtures I can edit the "profile" part as I edit the "sfUserGuard" part.
Manu
$this->embedRelation('Profile'); does nothing, sf keeps telling me that it doesn't know the widget 'profile'
Manu