Search code examples
ruby-on-railsrubyruby-on-rails-3devise

Writing into model using devise variable


I have model, and when i write into it, i'm using standart Model.create!(params[:somesymbol]) However in my form i have hidden field with current_user.id current_user its variable from devise, which returns user that is logged. So when i create new record, i believe to user, that he didnt change value in hidden field. Is there any ways to avoid this, and write into model in some way like this Model.create!(params[:somesymbol], user_id: current_user.id) ?


Solution

  • You can use :

    Model.create!(params[:somesymbol].merge(user_id: current_user.id))
    

    The user_id in params will be overridden by current_user.id (see doc)