配送先住所と請求先住所を住所モデルに抽出する以外に、この検証の重複を削除するにはどうすればよいですか?
請求先住所が配送先住所と異なる場合にのみ、請求先住所を検証したい. それをモジュールに抽出するにはどうすればよいですか?モジュールに何を含めるか、何を参照するかがわからないので、例は本当に役に立ちますself
。
validates :shipping_name, :shipping_address1, :shipping_street_number, :shipping_city, presence: true
validates :shipping_state, inclusion: { in: Address.states.values }
validates :shipping_post_code, length: { is: 5 }, numericality: { only_integer: true }
validates :billing_name, :billing_address1, :billing_street_number, :billing_city, presence: true, unless: -> { self.bill_to_shipping_address? }
validates :billing_state, inclusion: { in: Address.states.values }, unless: -> { self.bill_to_shipping_address? }
validates :billing_post_code, length: { is: 5 }, numericality: { only_integer: true }, unless: -> { self.bill_to_shipping_address? }