我是Ruby on Rails的新手(从Laravel切换)并且不了解迁移约束是如何工作的。
在我的迁移文件中,我有:
t.string :username, null: false, limit: 20
t.index :username, unique: true
但是当我尝试创建一个用户名长度超过20个字符(或没有值)的用户时,它可以工作,只有唯一约束有效,如果我尝试创建第二个用户则给我一个警告使用相同的用户名。
我使用sqlite进行开发。当我查看development.sqlite3文件时,一切似乎都没问题:
"username" varchar(20) NOT NULL
如果有人可以帮助我,我将不胜感激:)
由于