Регистрационная форма Rails Devise не принимает пользовательское поле имени пользователя - PullRequest
1 голос
/ 17 октября 2010

Я пытаюсь добавить имя пользователя в мою установку устройства, а именно эпизод Railscast.Я добавил поле в свою модель пользователя, но когда я пытаюсь создать нового пользователя с именем пользователя, действие формы продолжает пытаться передать нулевое значение в мою базу данных, что вызывает ошибку.

Вотсхема для моей модели User:

create_table "users", :force => true do |t|
  t.string   "username",                                               :null => false
  t.string   "email",                               :default => "",    :null => false
  t.string   "encrypted_password",   :limit => 128, :default => "",    :null => false
  t.string   "password_salt",                       :default => "",    :null => false
  t.string   "reset_password_token"
  t.string   "remember_token"
  t.datetime "remember_created_at"
  t.integer  "sign_in_count",                       :default => 0
  t.datetime "current_sign_in_at"
  t.datetime "last_sign_in_at"
  t.string   "current_sign_in_ip"
  t.string   "last_sign_in_ip"
  t.datetime "created_at"
  t.datetime "updated_at"
end

И вот хеш, который передается через мою регистрационную форму:

{"utf8"=>"✓",
  "authenticity_token"=>"/6Mf3mAd4TQ8uqJ4nPZAu/HbPnktKFmJ+G76j2pUV7U=",
  "user"=>{"email"=>"email@email.co",
  "username"=>"test",
  "password"=>"[FILTERED]",
  "password_confirmation"=>"[FILTERED]"},
  "commit"=>"Sign up"}

Но, это выдает ошибку, как упомянуто выше.В частности, потому что он пытается вставить NULL в таблицу, хотя хеш POST включает в себя значение для имени пользователя.

Любая помощь приветствуется.

1 Ответ

4 голосов
/ 19 октября 2010

Вы уверены, что имя пользователя есть в вашем списке attr_accessible?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...