Advertisement
Guest User

Untitled

a guest
Feb 8th, 2017
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. class MailableEvent < ApplicationRecord
  2. has_and_belongs_to_many :email_addresses
  3. end
  4.  
  5. class EmailAddress < ApplicationRecord
  6. has_and_belongs_to_many :mailable_events
  7. validates :address, uniqueness: true
  8. end
  9.  
  10. ...
  11. email_address_array.each do |address|
  12. @email_address_obj = EmailAddress.find_by_address(address)
  13. unless @email_address_obj
  14. @mailable_event.email_addresses.new(address: address,unsubscribe: false)
  15. @mailable_event.save
  16. else
  17. @mailable_event.save
  18. event_fk = @mailable_event.id
  19. email_fk = @email_address_obj.id
  20. sql_insert = "INSERT INTO email_addresses_mailable_events("mailable_event_id", "email_address_id") VALUES(#{event_fk},#{email_fk});"
  21. ActiveRecord::Base.connection.execute(sql_insert)
  22. end
  23.  
  24. > Look up first email address in email_addresses table and load it in. # @email_address_obj = EmailAddress.find_by(address: 'something@gmail.com')
  25.  
  26. > Save the record({ serial number '456'}) associating it with 'something@gmail.com' too # @email_address_obj.mailable_events.create(@mailable_event.attributes)
  27.  
  28. > Look up second email address in EA table and load it in. # @email_address_obj = EmailAddress.find_by(address: 'anything@gmail.com')
  29.  
  30. > Just associate the record({ serial number '321'}) with 'anything@gmail.com' # which means nothing has to be updated in Models and only a new entry { id: 'xx', EE_FK: 'xx', EA_FK: 'xx' } in join table has to be inserted, for which I cannot use @ea_object.mailable_events.create(@mailable_event.attributes) coz it will create a new duplicate EE record.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement