Ricardo do Valle
2014-Aug-09 07:22 UTC
How avoid concurrency belongs_to and has_many association?
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
--
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+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
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.