Rails 3 save parent model and association if nested attributes validation fails for uniqueness

249 views
Skip to first unread message

Butu

unread,
Feb 24, 2011, 12:56:06 AM2/24/11
to rubyonra...@googlegroups.com
Hi,

Song
has_and_belongs_to_many :people
accepts_nested_attributes_for :people

Person
validates :uniqueness => true

If person record not present, nested attributes working great! in rails way. i.e., inserting into songs, people and people_songs table correctly.

I am interested in:-
If there is person exist, it should skip insertion into people table but data should be inserted in songs and people_songs table (association table). 

There are lots of approach to solve this problem. I usually comes with some ugly way to deal with this. Can some body suggest me the proper Rails way to handle this.

Thanks!
Butu

Dan

unread,
Apr 8, 2011, 10:13:40 PM4/8/11
to Ruby on Rails: Talk
Hi, I am also facing the same problem. Unfortunately googling around,
I see recommendations of using the method find_or_create_by. But what
if I'm using nested attributes to save?

Any advise?

On Feb 24, 1:56 pm, Butu <but...@gmail.com> wrote:
> Hi,
>
> Song
> has_and_belongs_to_many :people
> accepts_nested_attributes_for :people
>
> Person
> validates :uniqueness => true
>
> If person record not present, nested attributes working great! in rails way.
> i.e., inserting into songs, people and people_songs table correctly.
>
> I am interested in:-
> *If there is person exist, it should skip insertion into people table but
> data should be inserted in songs and people_songs table (association
> table). *
> *
> *
Reply all
Reply to author
Forward
0 new messages