我正在使用Ruby on Rails。我想將用戶名存儲到數據庫中,當我提取它們時,我希望它們具有與輸入時相同的大小寫,但我想添加一些不區分大小寫的驗證,以確保無法使用相同的用戶名,無論大寫。我如何將用戶名保存在數據庫中並保持大小寫,同時進行不區分大小寫的驗證?
我這樣說是因爲不是所有的數據庫適配器都使用區分大小寫的索引,所以我需要在用戶名保存到數據庫之前將用戶名縮寫。
因此在模型驗證會是這樣:
uniqueness: { case_sensitive: false }
我怎麼會去這樣做呢?
但是,不是所有的數據庫適配器都使用區分大小寫的索引,所以我需要做驗證然後'before_save {username.downcase! }' – Tim
@Tim您使用的是哪種數據庫適配器,還是您希望此應用程序可以跨多種類型的數據庫工作? – jvperrin
用於開發和測試的SQLite3和用於生產的PostgreSQL。 – Tim