タグ

ブックマーク / www.techscore.com (2)

  • Railsのコールバックまとめ | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Techscore 体の記事の下書きを書き進めています。 ということで、コールバックの記事の下書きを公開します。 コールバックの種類 コールバックとは、バリデーションの実行やデータベースへの保存などのタイミングで処理を行うための機能です。 あるタイミングで必ず実行する必要がある処理をコールバックに指定することで、モデルの一貫性を保つことができます。 Rails のコールバックの種類をまとめてみると、非常に多いことが分かります。 after_find 検索メソッドでオブジェクトが見つかったタイミングで実行されます。 検索条件を指定せずに all メソッドを呼び出すなど、検索結果が大量になる場合は注意が必要です。 検索結果の数だけコールバックが実行されますので、パフォーマンスに重大な影響を及ぼす可能性があります。 after_initialize オブジェクトがインス

  • Railsのオブザーバまとめ | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 今回は Rails のオブザーバの話をします。 オブザーバとは Rails のオブザーバとは、デザインパターンの Observer パターンを実現する仕組みです。 可能なことはコールバックと同じで、バリデーションやデータベースへの保存が行われるタイミングで行う処理を記述することができます。 コールバックとオブザーバのどちらを利用するかは、その処理がモデルの一貫性を保つために必要であるかという基準で考えると良いでしょう。 保存前に入力されたパスワードをハッシュ化するのであればコールバック、会員登録後に登録完了メールを送信するような場合はオブザーバが適しています。 オブザーバの作成 オブザーバは以下のような ActiveRecord::Observer を継承したクラスです。

    nkwhr
    nkwhr 2014/07/16
  • 1