Ruby on rails RoR:max#u用户数为';你不存钱吗?

Ruby on rails RoR:max#u用户数为';你不存钱吗?,ruby-on-rails,ruby,validation,initialization,Ruby On Rails,Ruby,Validation,Initialization,我想这可能是其他地方的答案,但我不是100%确定要查找什么才能找到答案 我试图在我的length\u of_users方法之前设置max\u users,但由于某种原因,它没有被保存,然后当length\u of_users出现时,max\u users显示为nil 非常感谢您的帮助。提前谢谢 以下是我的资产型号代码: validate :length_of_users . . . after_initialize :set_max_users . . . def set_max_users

我想这可能是其他地方的答案,但我不是100%确定要查找什么才能找到答案

我试图在我的
length\u of_users
方法之前设置
max\u users
,但由于某种原因,它没有被保存,然后当length\u of_users出现时,max\u users显示为
nil

非常感谢您的帮助。提前谢谢

以下是我的资产型号代码:

validate :length_of_users
.
.
.
after_initialize :set_max_users
.
.
.
def set_max_users
  if max_users.nil?
    max_users = 1
  end
end
.
.
.
def length_of_users
  if user_ids.count > max_users
    errors.add(:users, "You can only add a maximum of #{max_users} users")
  end
end

正在显示代码中不相关的间隙。

通过
max\u users=1
只设置局部变量
max\u users
,这是没有用的。你应该:

self.max_users = 1

要使用
max\u users=
setter方法

我真不敢相信我错过了。非常感谢你。