Sha256: 5e80f55c6e42721393dc6c57a4c6f678769868cb382f6db8fc095bf4133f75a1

Contents?: true

Size: 698 Bytes

Versions: 9

Compression:

Stored size: 698 Bytes

Contents

# == Schema Information
#
# Table name: users
#
#  id         :integer          not null, primary key
#  name       :string
#  email      :string
#  age        :integer
#  address    :string
#  created_at :datetime         not null
#  updated_at :datetime         not null
#
class User < ApplicationRecord
  has_many :posts, dependent: :destroy
  accepts_nested_attributes_for :posts

  include PubSubModelSync::PublisherConcern
  ps_after_commit(:create) do
    ps_publish(:create, mapping: %i[id name email age])
  end

  ps_after_commit(:update) do
    ps_publish(:update, mapping: %i[id name email age])
  end

  ps_after_commit(:destroy) do
    ps_publish(:destroy, mapping: %i[id])
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
pub_sub_model_sync-1.4.0 samples/app1/app/models/user.rb
pub_sub_model_sync-1.3.1 samples/app1/app/models/user.rb
pub_sub_model_sync-1.3.0 samples/app1/app/models/user.rb
pub_sub_model_sync-1.2.1 samples/app1/app/models/user.rb
pub_sub_model_sync-1.2.0 samples/app1/app/models/user.rb
pub_sub_model_sync-1.1.1 samples/app1/app/models/user.rb
pub_sub_model_sync-1.1.0 samples/app1/app/models/user.rb
pub_sub_model_sync-1.0.1 samples/app1/app/models/user.rb
pub_sub_model_sync-1.0 samples/app1/app/models/user.rb