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
- Rails HABTM: Select everything a that a record 'has'
- Best way to make an HABTM association via console
- dynamically create an ical / ics file from a rails model
- Ruby destroy is not working? Or objects still present?
- NoMethodError: undefined method `update_average_rating' for nil:NilClass
- Select results where joined table contains records with an attribute, but without another
- Showing posts only created when boolean was true
- Ruby on rails and HAML - Print a hash with background color
- How can I monitor an endpoint's status with Ruby?
- How to create dynamic pages without form_for helper in Rails?
- Rails 4.2 jQuery loads only after refresh
- "Access Denied" - User's Permissions to S3 Bucket
- ActiveRecord, Rails 4: has_many :through with scoped conditions failure
- Rails - formatting a list of options
- Rails - Ajax do not work properly on production server
Related Questions in RUBY
- Best way to make an HABTM association via console
- undefined method `namespace' for main:Object (NoMethodError) - active record / rakefile
- Ruby destroy is not working? Or objects still present?
- Trying to set the value of an input with mechanize
- How to split the logic in a ruby game
- How can I monitor an endpoint's status with Ruby?
- Why can a private class method be explicitly invoked in Ruby?
- Rails - Ajax do not work properly on production server
- syntax error, unexpected kEND
- Carrierwave file upload with different file types
- b.javascript_dialog().exists? is not working for me in WATIR 4.0.2
- Combine two arrays of hashes
- Building a simple calculator form in Rails 4
- How do I update create route from rails 3 to 4
- Comparison of Fixnum with nil failed - palindrome program Ruby
Related Questions in METAPROGRAMMING
- Boost/C++ eval_if fails
- create objects in ruby with our own custom method in ruby
- Intercept and modify user input in Common Lisp
- How to produce generic time interval views of PostgreSQL events table?
- function template parametrized by other function with different number of arguments
- How do I change the context of lambda?
- Is there a way to dynamically add a scope to an active record class?
- Dealing with end keyword in macros for array indices
- Using meta programming to select member variables
- Checking non-virtual inheritance during compile time
- C++ convert string literal to multi-character literal at compile time
- I want to use one controller and html.erb files for my dynamic table. How I will do it in Ruby On Rails?
- Type function that returns a tuple of chosen types
- Is it possible to define class methods within `class_eval`?
- Why isn't it possible to refer to meta fields or methods in Java?
Related Questions in ALIAS-METHOD
- class << self, alias_method, and monkey patching Mechanize::Cookie
- ruby on rails add functionality to model property change
- undefined method `render' for class `ActionView::Base'
- `alias_method` a private method
- Unexpected value of __callee__ when including a module – is this a Ruby bug?
- ruby self.inherited alias_method
- Rails Monkey Patch alias_method cause no method error
- alias_method, alias_method_chain, and self.included
- Ruby/Rails: alias_method practices
- Chain of Responsibility and alias_method problems in Ruby
- Override same Class method in Ruby with Multiple Modules, with need to call super. Do I use Method Alias, or some other clever trick?
- alias_method and class_methods don't mix?
- alias_attribute and creating and method with the original attribute name causes a loop
- Alias method chain in JavaScript?
- Add alias to logical operators
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 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: