我正在尝试在项目中使用Devise gem。那行得通,但是我仍然有一个问题:
我在应用程序中设置了设计并生成了视图,但是我在数据库(用户名)中添加了一个额外的字段。所以,问题是我需要这个用户名,但是在创建新用户时它并没有保存在数据库中:/问题似乎出在控制器中,但我不知道如何访问它。
设计是否隐藏其控制器?例如,我可以访问此控制器并仅在参数中添加我想要的字段吗?我真的需要编写一个新的控制器来覆盖默认控制器吗?我该怎么办?以及如何?
答案 0 :(得分:0)
查看文档:{{3}}
您必须告诉设备将额外的参数保存在数据库中。
您的application_controller.rb文件如下:
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
before_action :configure_permitted_parameters, if: :devise_controller?
protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:username])
end
end