In my rails model, I have a decimal property called employer_wcb. I would like it if, when employer_wcb was changed, a dirty bit was set to true. I'd like to override the employer_wcb setter method. Any way to do so (in particular using metaprogramming)?
ruby on rails add functionality to model property change
1k Views Asked by Daniel At
2
There are 2 best solutions below
1
Daniel
On
If you don't want to use rail's built in dirty bit functionality (say you want to override for other reasons) you cannot use alias method (see my comments on Steve's entry above). You can however use calls to super to make it work.
def employer_wcb=(val)
# Set the dirty bit to true
dirty = true
super val
end
This works just fine.
Related Questions in RUBY-ON-RAILS
- How to display legend box in tooltip text for amCharts 5 in Rails application?
- how to integrate cashfree payment gateway in ruby on rails project
- RSpec Capybara throwing Selenium error when trying to click a button with browser confirm
- rails minitest not picking up fixture properly, instance variable not percolating
- Duplicate GET requests - Rails & Heroku
- How to stub out current_user in JWT model for Rspec?
- NameError in Home#index
- Verifying Google Identity OAuth2 token with Ruby
- Error WebMock::NetConnectNotAllowedError in testing with stub using minitest in rails (using Faraday)
- why is mission_control-jobs erroring with load path error?
- Rescuing validation errors from a polymorphic association
- New error on random number assigned to local variable , Rails
- How to fix error in model with gem lockbox
- Images uploaded via Active Storage not displaying in Active Admin or on certain devices
- controller test_methods generating two errors intermittently
Related Questions in RUBY
- how to integrate cashfree payment gateway in ruby on rails project
- RSpec Capybara throwing Selenium error when trying to click a button with browser confirm
- Duplicate GET requests - Rails & Heroku
- convert csv file with json data inside to a column, rows table in 2nd csv file
- Installing dependencies from a gemspec file
- Verifying Google Identity OAuth2 token with Ruby
- Java code of AES/GCM/NoPadding encryption algorithm with authentication tag
- How to fix error in model with gem lockbox
- Cannot install Ruby Gem on Window
- use logstash filter ,aes gcm encrypted in ruby,but cannot decrypted in java
- In Rails 7, what is the right ActiveRecord callback to use if I need to prevent (or rollback) persistance on error?
- How can I go through an array and still remove elements from it
- Nokogiri only returning 5 results
- How do I get the fullscreen mode in firefox?
- undefined group option when using branch reset group regex in Ruby
Related Questions in METAPROGRAMMING
- How to declare abstract class static fields in Python?
- C++ Metaprogramming to check type existence
- How do I write an implicit cast for my strongly typed interpreter? (C++)
- Is it possible to append subroutines to a Raku module at runtime?
- Is it possible to use constexpr if to check if the type is a container or a std::string
- Facing issue when running xbuild after building mono via meta-mono version 6.12.0.161
- Automatically assign index for every template specialization at compile time via C++ meta programming?
- Feasibility of database as middleware
- Compilation-time initialization of an array of struct with the information of another array
- Prepend Kernel module function globally
- From Variadic Arguments to its Inner Types as Variadic Arguments
- How to create a 0-arity method without parenthesis using Scala 3 low-level typed AST metaprogramming API?
- As a Rust library author, what should my `#![recursion_limit]` be?
- How to query strings by specifying multiple matching patterns using DolphinDB metaprogramming?
- How to dynamically provide arguments to a class __init__ function based on attributes?
Related Questions in ALIAS-METHOD
- MRI: Why are some methods implemented as aliases, but others duplicated?
- Is there an alias_method for a class method?
- undefined method for model class that I want no modify by alias_method
- Improving on hacky ruby 'method_alias' fix for conflicting redmine plugins?
- When should I use an Alias Method? - Ruby
- Add alias to logical operators
- Rails Monkey Patch alias_method cause no method error
- Ruby: alias_method for module static method
- ruby self.inherited alias_method
- ruby alias_method in class method
- Unexpected value of __callee__ when including a module – is this a Ruby bug?
- An efficient version/alternative to the alias method that samples without replacement
- `alias_method` a private method
- How to access 'layout' of parent controller?
- what is the difference between alias_method and alias_method_chain?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
So actually, as of Rails v2.1, this has been baked into Rails. Have a look at the documentation for ActiveRecord::Dirty. In summary: