タグ

システム開発とmodelに関するsnjxのブックマーク (3)

  • Rails 4でモデルのバリデーションまとめ - Rails Webook

    Railsではバリデーション(Validation)という仕組みがあります。 フォームなどでユーザーからの入力値をDBに保存する前にその値が正しいものかモデル層で(システムとして許可している値か)を検証する仕組みです。 バリデーションの基的な流れ、バリデーションの定義とバリデーションのテスト方法、バリデーションのスキップなどのバリデーションの基についてまとめました。 動作確認 Rails 4.1 ActiveRecord 4.1 shoulda-matchers 2.6.3 目次 1. Railsでのバリデーションの流れ 2. バリデーションを定義する 2.1. 存在チェック(presence) 2.2. 一意性(ユニーク制約)のチェック(uniqueness) 2.3. 長さのチェック(length) 2.4. フォーマットのチェック(format) 2.5. 数値の値チェック(nu

    Rails 4でモデルのバリデーションまとめ - Rails Webook
  • Railsのコールバックまとめ | TECHSCORE BLOG | TECHSCORE BLOG

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

  • Railsで変更前の値、型変換前の値、などなど | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 ActiveRecord は使い勝手の良いライブラリです。 ActiveRecord::Base クラスを継承するだけで、ほとんど設定することなく、その恩恵に預かることができます。 今回は、そのありがたい恩恵の中から、属性に代入した値に関する部分をピックアップします。 具体的には、型変換前の値が取得できること、属性の変更前の値を知ることができることなどをご紹介します。 例として User というモデルがあり、年齢を数値型で保持する age という属性があるとします。 Rails の ActiveRecord はデータベースにおけるカラムの型に応じて、代入された値を型変換してくれます。 例えば、数値型の age に "123" という文字列を代入したとします。

  • 1