ruby-on-rails – Rails accepted_nested_attributes计数验证
发布时间:2020-12-17 02:54:11 所属栏目:百科 来源:网络整理
导读:我有三个型号.销售,物品和图像.我想验证,在创建促销时,每次促销至少有三张照片和一件或多件商品.实现这一目标的最佳方法是什么? 销售模式: class Sale ActiveRecord::Base has_many :items,:dependent = :destroy has_many :images,:through = :items acce
我有三个型号.销售,物品和图像.我想验证,在创建促销时,每次促销至少有三张照片和一件或多件商品.实现这一目标的最佳方法是什么?
销售模式: class Sale < ActiveRecord::Base has_many :items,:dependent => :destroy has_many :images,:through => :items accepts_nested_attributes_for :items,:reject_if => lambda { |a| a[:title].blank? },:allow_destroy => true end 物品型号: class Item < ActiveRecord::Base belongs_to :sale,:dependent => :destroy has_many :images,:dependent => :destroy accepts_nested_attributes_for :images end 图像型号: class Image < ActiveRecord::Base belongs_to :item,:dependent => :destroy end 解决方法
创建用于验证的自定义方法
在您的销售模型中添加如下内容: validate :validate_item_count,:validate_image_count def validate_item_count if self.items.size < 1 errors.add(:items,"Need 1 or more items") end end def validate_image_count if self.items.images.size < 3 errors.add(:images,"Need at least 3 images") end end 希望这会有所帮助,祝你好运和编码愉快. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- OOD设计原则之开放封闭原则(OCP)
- c# – global.asax中的Application_Start()事件
- plsql – 如何使用存储过程将oracle表数据转换为单独的xml文
- PostgreSQL错误解决:ERROR: current transaction is abort
- c# – 验证十进制值的列表(或该列表的子列表)是否可以等于某
- ruby-on-rails-3 – 将HAML添加到Rails资源管道
- COCOS2DX-游戏开发之 坐标系
- C# 处理Excel公式(一)——创建、读取Excel公式
- c – 如何使用指向常量对象的指针调用成员函数指针?
- Oracle数据库用户查询常用命令