Save 36% for Black Friday! Learn more

New Discussion

Notifications

You’re not receiving notifications from this thread.

How is it done to pass default values in the controller?

4
Rails

Some values by default and others by strong parameters from the views

Generally, I put default values in the model itself rather than the controller.

class User
  after_initialize :set_defaults

    def set_defaults
      self.email ||= "email@address.com"
    end
end

I have access to current_user in model ?

I'm try:

def classroom_params
       params.require(:classroom).permit(:name, :owner_id => [current_user])
end

But don't work because "owner.required".

You don't have access to that in the model. For assigning current_user, I do that in the controller but all other defaults I'd put in the model.

def create
  @record = Record.new(record_params)
    @record.owner = current_user

    if @record.save
    #... etc
end

Thanks for all your help!! :)

Join the discussion
Create an account Log in