On Aug 9, 2014, at 3:22 AM, Ricardo do Valle wrote:

> How do I avoid concurrency and keep the data integrity if one user submit a 
> form before the other?
> 
> My issue is that the last user to submit the person/_form.rb will get all 
> chosen cards, same the cards that first user chose and I want to prohibit 
> that.
> 
>     # person.rb
> 
>     
> class Person < ActiveRecord::Base
> 
>       has_many 
> :cards
> 
>     
> end
> 
> 
>     
> # card.rb
> 
>     
> class Card < ActiveRecord::Base
> 
>       belongs_to 
> :person
> 
>       scope 
> :not_assigned_to_a_person, -> { Card.where(person_id: nil
> ) }
>     
> end
> 
> 
>     
> # create_cards.rb
> 
>     create_table 
> :cards do
>  |column|
>       column.references 
> :person, index: true
> 
>     
> end
> 
> 
>     
> # person/_form.rb
> 
>     = f.input 
> :card_ids
> ,
>         
> collection: Card
> .not_assigned_to_a_person,
>         
> label_method: :name, value_method: :id
> ,
>         
> input_html: { multiple: true
>  }
> 
> StackOverflow: 
> http://stackoverflow.com/questions/25216219/how-do-i-avoid-concurrency-belongs-to-and-has-many-association
> 

Have a look back into the mists of time. This may still be useful.

http://railscasts.com/episodes/59-optimistic-locking

Walter

> ​
> -- 
> Ricardo do Valle
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to rubyonrails-talk+unsubscr...@googlegroups.com.
> To post to this group, send email to rubyonrails-talk@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/rubyonrails-talk/CALQXn36%3D2PZ%2BGJbQD0shL8pRXWqnoHtMKSJsXGCcHR86uK1cmw%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/E71DD1FE-9904-4BF6-82FB-BE4D58047AA6%40wdstudio.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to