Ruby on rails rails 4复杂模型验证
我有一个rails应用程序。分配者(当前用户)必须将任务分配给执行者(其他用户)。我正在使用getter setter方法进行jquery自动完成和验证,这样我就可以确保任务分配给的用户是否存在。我使用的rescue设置为nil,因此,如果字段为空或用户不存在,则可以验证是否存在。我想对此进行更改,这样用户可以将字段留空,也可以从现有用户中进行选择。当我验证executor对象时,我不确定如何才能做到这一点 task.rbRuby on rails rails 4复杂模型验证,ruby-on-rails,validation,getter-setter,Ruby On Rails,Validation,Getter Setter,我有一个rails应用程序。分配者(当前用户)必须将任务分配给执行者(其他用户)。我正在使用getter setter方法进行jquery自动完成和验证,这样我就可以确保任务分配给的用户是否存在。我使用的rescue设置为nil,因此,如果字段为空或用户不存在,则可以验证是否存在。我想对此进行更改,这样用户可以将字段留空,也可以从现有用户中进行选择。当我验证executor对象时,我不确定如何才能做到这一点 task.rb class Task < ActiveRecord::Base
class Task < ActiveRecord::Base
belongs_to :assigner, class_name: "User"
belongs_to :executor, class_name: "User"
validates :assigner, presence: true
validates :executor, presence: { message: "must be valid"}
def task_name_company
[executor.try(:profile).try(:first_name), executor.try(:profile).try(:last_name), executor.try(:profile).try(:company)].join(' ')
end
def task_name_company=(name)
self.executor = User.joins(:profile).where("CONCAT_WS(' ', first_name, last_name, company) LIKE ?", "%#{name}%").first if name.present?
rescue ArgumentError
self.executor = nil
end
类任务