Я использую devise invitable для приглашения новых пользователей.Rails новая запись с перечислением всегда одна и та же
У меня есть модель пользователя с колонками роли для перечисления
class User < ActiveRecord::Base
enum role: [:client, :trainer, :admin]
Моей новая форма пользователя имеет следующую для столбца
.form-group
= f.label :role, class: "col-sm-2 control-label"
.col-sm-10
= f.select :role, ['client', 'trainer', 'admin'], {},{class: "form-control"}
роли, если я выбираю «клиент» и отправить форму Я вижу, что правильные параметры представлены "role"=>"client"
, но когда я проверяю базу данных, она всегда играет роль «тренер»
users_controller
def create
@user = User.new(user_params)
if User.find_by_email(@user.email).nil?
User.invite!(:email => @user.email)
redirect_to(users_path, :notice => 'User created')
else
render :action => 'new'
end
end
def user_params
params.require(:user).permit(:email, :role, :name)
end
У вас есть роль, разрешенная для пользователя user_params? –
@MarceloRisoli да, конечно ... –
почему это становится downvoted? –