No, we're not at rails 2.3, so no nested models.  And I was kind of hoping
to do all the validation/saving in one go rather and bit-by-bit doing it
with Ajax, unless I misunderstand how Ajax can help.  A generic-ized
version of the controller code is here:

http://pastie.org/482217

Thanks...

        -glenn

James Miller wrote:
> Hey Glenn,
> 
> Can you paste your model/controller code into a gist or pastie?  Are you 
> using nested attributes with Rails 2.3 
> (http://guides.rubyonrails.org/2_3_release_notes.html#nested-attributes) 
> or doing it manually?
> 
> James
> 
> On Mon, May 18, 2009 at 3:45 PM, Glenn Little <[email protected] 
> <mailto:[email protected]>> wrote:
> 
> 
>     (Okay, yeah, that subject line is bad taken out of context!)
> 
>     I'm in a form-handler action where I have a parent record and a list of
>     associated child records via a has_many association.
> 
>     I first walk through form params and look for matching child records
>     in the database (via a hidden child_id form param) and if the record
>     exists, I update the data, otherwise I create a new one via
>     parent.build()
>     and fill it in.  So now parent.children may have a mix of objects, some
>     in the db and some not yet.
> 
>     Then I update various parent values from params.
> 
>     Then I walk through the parent.children records and do a child.save
>     or child.destroy (depending on the new values and depending on
>     various business
>     rules).  Some of the destroy calls will be on child objects that
>     have just been
>     created and never put in the database (build() does not do an
>     implicit save).  Some
>     will be called on records that were in fact in the database.
> 
>     All good so far, but now I want to wave the updated parent record.
>     The problem is that when I do the parent.save, I get a
>     "can't modify frozen hash" error.
> 
>     I believe that's because the objects corresponding to any child records
>     that were destroyed have been frozen.  But I'm not sure why the
>     parent.save
>     is trying to modify those objects?
> 
>     Given these issues, I'm starting to wonder if my whole paradigm is
>     making
>     my life more difficult than it needs to be.
> 
>     Any ideas on how to get around the frozen hash issue, or alternatively,
>     the "right" way to do what I'm trying to do?
> 
>     Thanks much in advance...
> 
>            -glenn
> 
> 
> 
> 
> > 

--~--~---------~--~----~------------~-------~--~----~
SD Ruby mailing list
[email protected]
http://groups.google.com/group/sdruby
-~----------~----~----~----~------~----~------~--~---

Reply via email to