Last active
July 20, 2018 02:37
-
-
Save ise/52af35bffcc103e2ab4387b2bf08a291 to your computer and use it in GitHub Desktop.
mongoid callbacks with relation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| class A | |
| include Mongoid::Document | |
| field :hoge, type: String | |
| belongs_to :b | |
| before_validation do | |
| p 'before_validation' | |
| end | |
| before_validation on: :create do | |
| p 'before_validation on create' | |
| end | |
| before_validation on: :update do | |
| p 'before_validation on update' | |
| end | |
| after_validation on: :create do | |
| p 'after_validation on create' | |
| end | |
| after_validation on: :update do | |
| p 'after_validation on update' | |
| end | |
| before_create do | |
| p 'before_create' | |
| end | |
| before_update do | |
| p 'before_update' | |
| end | |
| before_save on: :create do | |
| p 'before_save on create' | |
| end | |
| before_save on: :update do | |
| p 'before_save on update' | |
| end | |
| end | |
| class B | |
| include Mongoid::Document | |
| field :fuga, type: String | |
| has_one :a | |
| end | |
| __END__ | |
| # mongoid (6.1.1) | |
| > b = B.create(fuga: "b") | |
| > a = A.create(hoge: "a", b: b) | |
| "before_validation" | |
| "before_validation on create" | |
| "after_validation on create" | |
| "before_save on create" | |
| "before_save on update" | |
| "before_create" | |
| > b.fuga = "bb" | |
| > b.save | |
| "before_validation" | |
| "before_validation on update" | |
| "after_validation on update" |
Author
ise
commented
Jul 19, 2018
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment