验证日期在特定范围内

时间:2016-04-20 07:52:13

标签: ruby-on-rails ruby validation

您好我的模型 buy_details entry_types

# Table name: bought_details
#
#  id            :integer          not null, primary key
#  bought_data   :date             not null
#  end_on        :date             not null
#  entry_type_id :integer
#  person_id     :integer
#  start_on      :date
#  cost          :decimal(5, 2)    not null

# Table name: entry_types
#
#  id           :integer          not null, primary key
#  kind         :string           not null
#  kind_details :string           not null
#  description  :text
#  price        :decimal(5, 2)    not null

我想要的是:

如果我注册新购买,例如id为1的人购买通行证(entry_type id:1)1个月(start_on:20.04.2016 end_on:20.05.2016)。

我希望创建验证以保护购买新通行证(entry_type kind ==“通过”,在数据库中我有几个类型等于“通过”的条目类型对象),当start_on或end_on在20.04.2016和20.05之间时。 2016r。只需提醒“您已经拥有有效的通行证”。

如何解决我的问题? 提前谢谢。

1 个答案:

答案 0 :(得分:1)

你试过ActiveSheet.CheckBoxes宝石吗? https://github.com/adzap/validates_timeliness

它可以简单地验证日期范围。

validates_timeliness