0

保存する前にレコードをチェックして破棄したい車のモデルがあります。メソッドから条件を渡さない場合、コードは次のようになります。

class Car < ActiveRecord::Base
  after_save :wheel_not_zero
  def wheel_not_zero
   false if self.wheel_num == 0 
  end 
end

このソリューションにより、ユーザーがフォームからエラーで送信したすべての車が拒否され、フォームに再度リダイレクトされます。再度フォームにリダイレクトせずに、条件に合う車だけをリジェクトしたい。

メンバーモデルからネストされた属性を介して車のレコードを作成します。関係は次のようになります

member -> car というわけで、メンバーレコードと一致しない条件の車のレコードを保存したいので、現在はすべてのレコードを拒否しています。

すべての応答に感謝します:)

4

1 に答える 1

0

リダイレクトはモデルからではなく、コントローラーからビューへのリダイレクトです。したがって、レコードを破棄する場合は、バリデーターを使用し、コントローラーで例外を管理する必要があります。例: レコードが無効な場合は、ホームページまたは他のページにリダイレクトできます..

重要なことは、リダイレクトがモデルとは別であることを心に留めておくことです

于 2015-07-21T11:12:47.113 に答える