Search code examples
ruby-on-rails-4conditional-statementsstrong-parameters

rails 4 strong params: make them conditional?


Is there a way to make strong_params conditional? Without the need to write 2 separate methods? In case where one would like to add certain attributes to the permit list when a certain condition is true

For example:

devise_parameter_sanitizer.for(:user) {|u| u.permit(:user,
                                                    :email,
                                                    :role,
                                                    )}

I have this :role attribute permitted in above example. I only want this attribute to be permitted when in Rails.env.development is there a way to do this?


Solution

  • Haven't found a solution, so I made 2 methods and call the correct param method to handle the records.