为何validates_uniqueness_of不先去尾空格再检查唯一性?

2026-04-11 18:490阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计200个文字,预计阅读时间需要1分钟。

为何validates_uniqueness_of不先去尾空格再检查唯一性?

假设我在用户名上实现`validates_uniqueness_of`。如果名称maddy已存在,那么它将接受maddy作为唯一值而不是maddy。它应该删除两边的空格。这种行为的目的是确保用户名是唯一的,并且格式化一致。以下是修改后的代码:

rubyclass Person before_validation :trim_whitespace

validates_uniqueness_of :username

private

def trim_whitespace self.username.strip! endend

为何validates_uniqueness_of不先去尾空格再检查唯一性?

假设我在用户名上实现validates_uniqueness_of.如果名称’maddy’已经存在,那么它将接受值’maddy’作为唯一值而不是’maddy’.它应该删除两侧的空格.怎么有这种行为?

class Person before_validation :strip_blanks protected def strip_blanks self.name = self.name.strip end end

此代码段的来源包含一些讨论,说明为什么这不是默认的Rails行为. www.ruby-forum.com/topic/166426

本文共计200个文字,预计阅读时间需要1分钟。

为何validates_uniqueness_of不先去尾空格再检查唯一性?

假设我在用户名上实现`validates_uniqueness_of`。如果名称maddy已存在,那么它将接受maddy作为唯一值而不是maddy。它应该删除两边的空格。这种行为的目的是确保用户名是唯一的,并且格式化一致。以下是修改后的代码:

rubyclass Person before_validation :trim_whitespace

validates_uniqueness_of :username

private

def trim_whitespace self.username.strip! endend

为何validates_uniqueness_of不先去尾空格再检查唯一性?

假设我在用户名上实现validates_uniqueness_of.如果名称’maddy’已经存在,那么它将接受值’maddy’作为唯一值而不是’maddy’.它应该删除两侧的空格.怎么有这种行为?

class Person before_validation :strip_blanks protected def strip_blanks self.name = self.name.strip end end

此代码段的来源包含一些讨论,说明为什么这不是默认的Rails行为. www.ruby-forum.com/topic/166426