Ask A Question

Notifications

You’re not receiving notifications from this thread.

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

Nicolás Bobb asked in Rails

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

Reply

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
Reply

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".

Reply

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
Reply

Thanks for all your help!! :)

Reply
Join the discussion
Create an account Log in

Want to stay up-to-date with Ruby on Rails?

Join 83,453+ developers who get early access to new tutorials, screencasts, articles, and more.

    We care about the protection of your data. Read our Privacy Policy.