我有两个模型,用户和角色,
在榜样:
has_and_belongs_to_many :users
在用户模型中,
has_and_belongs_to_many :roles
validates_presence_of :name, :if => "roles.map(&:name).include?(\"manager\")"
我的问题是我可以为用户角色添加一个“经理”角色,它会通过。当我打电话时在控制台中
sampleUser.roles << managerRole
它彻底并保存在数据库中。当我打电话时
sampleUser.valid?
我误会了,
我的理解是,因为 roles_users 是一个单独的表,所以用户上的任何内容都没有更新,因此不会使用用户验证。知道如何解决这个问题并使用户进入数据库的任何内容都是有效的吗?