ruby on rails - How can the value get updated in update_attribute -


i have test, needs set database-state:

before   site.first.update_attribute(:primary_domain, @params[:order][:primary_domain]) end 

but, reason, modifies @params:

before   @params[:order][:primary_domain].must_equal "example.com"   site.first.update_attribute(:primary_domain, @params[:order][:primary_domain])   @params[:order][:primary_domain].must_equal "example.com" end 

this fails, second @params[:order][:primary_domain].must_equal "example.com" fails, updates @params[:order][:primary_domain] there. weird, have expected update_attribute(name, value) not touch value, somehow, does.

it can circumvented .dup. interested cause this. maybe scope issue? fact normalising site.primary_domain on save, maybe?

# override primary_domain setter. # allows normalise domain def primary_domain=(primary_domain)   return primary_domain unless primary_domain.is_a?(string)   write_attribute(:primary_domain, site.parse_uri(primary_domain.dup).host) end 


Comments

Popular posts from this blog

java - Intellij Synchronizing output directories .. -

git - Initial Commit: "fatal: could not create leading directories of ..." -