我不想使用devise登录时不需要电子邮件。我从config / initializers / devise.rb中删除了电子邮件:
config.authentication_keys = [ :login ]
并将其添加到我的用户模型中:
def email_required?
false
end
但是,尝试保存用户时出现此错误:
SQLite3::SQLException: users.email may not be NULL
我是否想在迁移中进行某些更改?
最佳答案
看起来您在数据库中将电子邮件字段设置为“not NULL”或“Allow Null”设置为false。
您直接从数据库中得到一个错误。
假设您的用户模型被称为用户,则需要添加休闲迁移来解决此问题:
change_column :users, :email, :string, :null => true
说明文件:
http://apidock.com/rails/ActiveRecord/ConnectionAdapters/SchemaStatements/change_column
关于ruby-on-rails - 设计:不需要电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9165843/