3
我有一個User
模型和Following
,Follower
觀察在軌場和mongoid
用戶模型
has_and_belongs_to_many :followers, class_name: 'User', inverse_of: :following
has_and_belongs_to_many :following, class_name: 'User', inverse_of: :followers
關注
has_and_belongs_to_many :followers, class_name: 'User', inverse_of: :following
繼
has_and_belongs_to_many :followings, class_name: 'User', inverse_of: :followers
而且我有一個UserObserver
應該看到,如果用戶follower_ids
去改變,那麼將它添加到用戶Activities
所以,我怎麼能看只有在follower_ids
的變化並獲得最新的用戶id
放於activities
你能告訴我如何做到這一點用戶觀察員?因爲觸發器可能適用於此,但我希望有一個類可以自己處理用戶活動,比如有一個新的帖子不只是新的跟隨者,並且觸發器無處不在的代碼會很糟 –
您可以將# trigger_added_follower_observers方法調用#call_observer並更改方法的簽名以接收標識符(符號)以標識模型的哪個部分已更改。然後,在該方法中,您將實例化您的UserObserver傳遞自我(用戶)和已更改內容(:followers,:posts,...)的標識。我真的不認爲掛鉤或使用可觀察模塊會比這更好。 –