I solved my problem with this: http://trac.symfony-project.org/ticket/5867
Att, Pedro Casado On Wed, Apr 7, 2010 at 1:03 AM, Pedro Casado <pdr...@gmail.com> wrote: > Patter, can you show me your removeEmbedded ? > > Thanks > > Att, > Pedro Casado > > > > On Thu, Mar 5, 2009 at 7:49 PM, isleshocky77 <sost...@sowebdesigns.com>wrote: > >> >> Patter, >> So I just updated my plugin which is using a lot of this. I think >> what I ended up doing is actually pretty clean. I took some cues from >> what you said as far as the updateObject, but I didn't need to make an >> embeddedForm function because I'm deleting the object there. You can >> check out the full class in trac. With the way it's done here I don't >> have to have anything in the action which is how it was being done >> before. >> >> >> http://trac.symfony-project.org/browser/plugins/sfDoctrineUserPlugin/branches/1.2/modules/sfUserAdvancedUser/lib/form/sfUserAdvancedUserForm.class.php >> >> The meat of it is in the two last protected functions. >> >> -- >> Stephen Ostrow <sost...@sowebdesigns.com> >> >> On Feb 16, 4:41 am, patter <p.vukadi...@gmail.com> wrote: >> > Hi Stephen, >> > yes I mailed you :-). I have used User just for example and my form is >> > more complicated. Let say a UserObject have one FamilyObject and this >> > FamilyObject have one or two ParentsObjects. So in UserForm is >> > embedded FamilyForm with embedded FamilyForms (something like this - >> > three levels of embedding) >> > >> > I have a solution , but I'm not sure if it is the best one. >> > >> > It is easy to unset an embedded form for the form class itself: >> > >> > unset($this->embeddedForms('formName'); >> > >> > but because it is private property it is not possible from outside the >> > form. >> > I have created a new form class which extends the base sfForm and this >> > class adds one public method - removeEmbedded($name). >> > Now I can use: >> > >> > $embedded = $form->getEmbeddedForms(); >> > $embedded['relations']->removeEmbedded($name); >> > >> > I do this in updateObject() because it is called after the form is >> > validated and everything is o.k. >> > If I do this in bind() method and the form is not valid it will not be >> > shown properly . >> > >> > On Feb 15, 4:46 pm, jukea <jkea...@gmail.com> wrote: >> > >> > > Hi patter, >> > >> > > What I'd do is unset the embedded form as if ot was any other field. >> > >> > > if($postedValues[..insert your input name...]=='') >> > > unset($subForm['embededFormName']) >> > >> > > Do this from anywhere before you bind the data. You could also >> > > override the bind method in your form, unset the form there, and call >> > > the parent method. >> > >> > > Julien >> > >> > > On Feb 11, 11:06 am, patter <p.vukadi...@gmail.com> wrote: >> > >> > > > Hello, >> > >> > > > I have a1:n relation: User have two phone numbers (well my real use >> > > > case is a bit complicated :-) ). >> > >> > > > In my UserForm::configure() I have something like this: >> > >> > > > $p1 = $this->object['phones'][0] = new Phone(); >> > > > $p2 = $this->object['phones'][1] = new Phone(); >> > >> > > > $subForm = new sfForm(); >> > > > $subForm->embedForm(0, new PhoneForm($p1 ); >> > > > $subForm->embedForm(1, new PhoneForm($p2)); >> > >> > > > $this->embedForm('phones', $subForm); >> > >> > > > This works perfect. I can add a new User with 2 phones. >> > >> > > > The problem is that if the user doesn't provide information for >> second >> > > > phone I should not insert a blank record (in fact I can't because of >> > > > not null fields). >> > >> > > > I have read a lot of articles but I'm not able to find solution yet. >> > >> > > > I think that I have to use UpdateObject() method to remove unwanted >> > > > relation, but if this is the better solution ? >> > >> > > > I use Doctrine :-) >> --~--~---------~--~----~------------~-------~--~----~ >> You received this message because you are subscribed to the Google Groups >> "symfony users" group. >> To post to this group, send email to symfony-users@googlegroups.com >> To unsubscribe from this group, send email to >> symfony-users+unsubscr...@googlegroups.com<symfony-users%2bunsubscr...@googlegroups.com> >> For more options, visit this group at >> http://groups.google.com/group/symfony-users?hl=en >> -~----------~----~----~----~------~----~------~--~--- >> >> > -- If you want to report a vulnerability issue on symfony, please send it to security at symfony-project.com You received this message because you are subscribed to the Google Groups "symfony users" group. To post to this group, send email to symfony-users@googlegroups.com To unsubscribe from this group, send email to symfony-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/symfony-users?hl=en To unsubscribe, reply using "remove me" as the subject.