我正在尝试为注册#new添加一些额外的字段.由于我只需要额外的数据并且不需要不同的功能,我不明白为什么我需要覆盖控制器等.所以我做的是修改注册#new如下:

要通过清理程序启用这些额外字段,我更新了ApplicationController,如下所示:

由于某种原因,它不起作用,额外的字段作为空值进入数据库.
我正在使用Ruby 2和Rails 4 rc1,以及Devise 3.0.0.rc.
使用Devise gem生成用户模型.
尝试添加"用户名"属性.
随后的官方文档,现在我的ApplicationController看起来像这样:
class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception
  before_action :configure_permitted_parameters, if: :devise_controller?
  before_action :authenticate_user!
  protected
  def configure_permitted_parameters
    devise_parameter_sanitizer.permit(:account_update, keys: [:username])
    devise_parameter_sanitizer.permit(:sign_in, keys: [:username])
    devise_parameter_sanitizer.permit(:sign_up, keys: [:username])
  end
end
当我尝试转到帐户更新页面时,我收到以下错误:
NoMethodError in Devise::RegistrationsController#edit
private method `permit' called for #Devise::ParameterSanitizer:0x007f13396cf180>
这里有什么不对的?
所以,我正在为rails应用程序使用设计用户身份验证.我希望为设计用户添加名字和姓氏.因此,我为Users数据库创建了新列.不幸的是,当我尝试我的表单时,我得到"未定义的方法`first_name'".这是表格:
        <h2>Sign up</h2>
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
    <%= devise_error_messages! %>
    <div><%= f.label :first_name %><br />
      <%= f.first_name :first_name, autofocus: true %></div>
    <div><%= f.label :last_name %><br />
      <%= f.last_name :last_name, autofocus: true %></div>
    <div><%= f.label :email %><br />
    <%= f.email_field :email, autofocus: true %></div>
    <div><%= f.label :password %><br />
      <%= f.password_field :password, autocomplete: "off" %></div>
    <div><%= f.label :password_confirmation %><br />
      <%= f.password_field :password_confirmation, autocomplete: "off" %></div>
    <div><%= f.submit "Sign up" %></div>
<% end %>
我确认使用控制台实际添加了数据库列.我打字了
user …
我正在使用 Devise 在我的应用程序中构建注册/身份验证系统。
查看了相当多的用于向设计模型添加信息的资源(例如用户名、传记、头像 URL 等)[资源包括Jaco Pretorius 的网站、这个(格式错误的)SO 问题和这个 SO 问题。
一切都很好——它有效。但我的问题是它保存到 User 模型,根据数据库规范化(也引用这个 SO 问题has_one),它实际上应该保存到通过and连接的 User 子模型belongs_to。
到目前为止,我已经User通过 Devise 创建了一个模型。我还UserProfile通过rails generate脚本创建了一个模型。
user.rb(供参考)
class User < ActiveRecord::Base
  devise :database_authenticatable, :registerable, :confirmable, :recoverable, :rememberable, :trackable, :validatable
  has_one :user_profile, dependent: :destroy
end
用户配置文件.rb
class UserProfile < ActiveRecord::Base
  belongs_to :user
end
时间戳_创建_用户_配置文件.rb
class CreateUserProfiles < ActiveRecord::Migration
  def change
    create_table :user_profiles do |t|
      t.string …