Ruby on rails 验证失败,出现委派错误
我有以下模型Ruby on rails 验证失败,出现委派错误,ruby-on-rails,rspec,shoulda,Ruby On Rails,Rspec,Shoulda,我有以下模型 class WarehouseVariant < AB has_one :warehouse has_one :variant has_many :variant_cities end class VariantCity < AB belongs_to :warehouse_variant delegate :mrp_paise, :to => :warehouse_variant validates :variant_id, uniqu
class WarehouseVariant < AB
has_one :warehouse
has_one :variant
has_many :variant_cities
end
class VariantCity < AB
belongs_to :warehouse_variant
delegate :mrp_paise, :to => :warehouse_variant
validates :variant_id, uniqueness: { scope: :city_id }
end
规范失败,出现以下错误:
模块::删除错误:
差异性#mrp分配给仓库#变量。mrp分配,但仓库#变量为零:#
问题是我插入了这样一个调试语句
它{binding.pry;应该是
验证(:variant\u id)的唯一性。作用域为(:city\u id)}
这里的variant_city有对象仓库_variant,但是当测试完成时,我得到了上面提到的错误
任何帮助都将不胜感激
编辑:
验证(:variant\u id)过程的存在
let!(:warehouse_variant) {create(:warehouse_variant) }
subject { create(:variant_city, max_discount_percent: 99.99, max_promotion_percent: 99.99, warehouse_variant: warehouse_variant) }
it { is_expected.to validate_uniqueness_of(:variant_id).scoped_to(:city_id)}