Chỉ cần tự hỏi liệu có cách nào để thực hiện gọi lại có điều kiện trong Rails hay không. Tôi biết bạn có thể làm một xác nhận có điều kiện như vậy:Gọi lại có điều kiện trong mô hình của Rails?
validates_uniqueness_of :email, :if => (1==1)
Tôi thường làm những việc như thế này trong callbacks tôi:
class LineItem < ActiveRecord::Base
belongs_to :invoice
belongs_to :line_item_group
before_create :set_invoice_id
def set_invoice_id
unless self.invoice_id
self.invoice_id = self.line_item_group.invoice_id
end
end
end
Nó sẽ là tuyệt vời để làm sạch mà lên một chút.
Bạn nói đúng, nó không phải là SQL chính thống, và tôi thích nó theo cách đó. :) Tôi sẵn sàng hy sinh tính bình thường cho ít tham gia hơn. – tybro0103