0

新しいプロジェクトでは、メールフィルターなどの機能が必要です。関連するアクションを含む一連のルールがあります。ユーザーがリクエストを送信するときは、検証のためにこれらのルールを通過する必要があります。これらのルールのいずれかが一致する場合は、対応するアクションをトリガーする必要があります(または、モデルをさらにいくつかの属性で更新する必要があります)。メールフィルターと同じように。

また、これらのルールはユーザー固有であり、ActiveRecordモデルとして保存されます。

既存の宝石へのポインタはありますか?!

私のRORバージョンは2.3.8です

4

1 に答える 1

0

コントローラーレベルでの検証を探しています。私がお勧めするのは、ApplicationController にフィルターを追加することです。

例えば ​​:

class ApplicationController < ActionController::Base
    before_filter :is_logged_in
    def is_logged_in
        # ... do your stuff !
    end
end

これの素晴らしいところは次のとおりです。

  • Ruby を OO 言語として使用すると、クラスの独自の階層を作成できるため、コードが理解しやすくなり、すべてが乾燥したものになります。
  • フィルター前、フィルター後...詳細については、こちらをご覧くださいhttp://guides.rubyonrails.org/action_controller_overview.html
  • 現在のコントローラとアクションにアクセスします:controller.controller_nameそしてcontroller.action_name

また、モデル レベルで実装する必要がある検証があることにも注意してください。ActiveRecord も同様の便利なフィルターのセットを提供します: http://guides.rubyonrails.org/active_record_validations_callbacks.html#available-callbacks

于 2010-12-07T12:29:46.360 に答える