【发布时间】:2017-03-11 20:11:40
【问题描述】:
面临问题。
未定义方法permit 为nil:NilClass
def update_all
authorize Role
@roles = current_account.roles.where(admin: false)
@roles.each do |role|
permissions = params[:permissions]&.[](role.id.to_s)
role.update(permission_params(permissions))
end
redirect_to edit_all_roles_path, notice: 'Permissions updated!'
end
在线permissions = params[:permissions]&.[](role.id.to_s)
过滤permissions。有时它会返回nil。我明白为什么方法permit 未定义。但是如何避免呢?
def permission_params(permission_params)
permission_params.permit(permissions: [])
end
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-5