获取在Rails 5

时间:2018-01-19 16:11:42

标签: ruby-on-rails validation ruby-on-rails-5

我有一个带方法的控制器

def create
   if passenger.valid?
   ....
end

在我的Passenger模型中,我有我的验证规则。这些规则取决于调用验证器的方法。

所以问题是,如何在我的模型中使用调用验证器的名称方法,在这种情况下'create'

2 个答案:

答案 0 :(得分:0)

试试这个:

caller_locations(1,1)[0].label

答案 1 :(得分:0)

我建议在此案例的模型中设置attr_accessor

# In model
attr_accessor :validation_caller

def valodation_rules
  if @validation_caller.eql?('create')
    # validations
  else
    # validations
  end
end

# in controller
model_instance.validation_caller = 'create'

希望有所帮助......