Jose

Joined

60 Experience
0 Lessons Completed
0 Questions Solved

Activity

Posted in Not able to override a column with default value

This works fine with update_colum and not update_attributes or save! and from code there are no callbacks triggered for this model.

Posted in Not able to override a column with default value

I have created this in migration,

created_by VARCHAR (64) DEFAULT CURRENT_USER,
updated_by VARCHAR (64) DEFAULT CURRENT_USER

By default the current user values are stored but when i try to override like,

user = User.new
user.created_by = "New User"
user.updated_by = "New User"
user.save

The above code is not saving the "New User" value into created_by and updated_by column and still its storing the adefault value on save.

I tried to override by adding the below in model

def created_by=(created_by_user)
    write_attribute(:created_by, created_by_user)
  end

  def updated_by=(updated_by_user)
    write_attribute(:updated_by, updated_by_user)
  end

also using super

def created_by=(created_by_user)
    super created_by_user
  end

  def updated_by=(updated_by_user)
    super updated_by_user
  end

Its not workig still and i also checkt at the db level there are no triggers.

Thanks in advance