2014-07-01から1ヶ月間の記事一覧
概要 Module#=== obj -> bool 詳細 指定された obj が 条件 戻り値 自身かそのサブクラスのインスタンスであるとき true obj が自身をインクルードしたクラスかそのサブクラスのインスタンスであるとき true その他 false obj.kind_of?(SomeClass)と同じ。 '…
概要 Module# other -> bool | nil 詳細 self と other の敬称関係を比較する self が other の先祖のクラス/モジュールの場合、 1 を返却 self が other と同一のクラス/モジュールの場合、 0 を返却 self が other の子孫のクラス/モジュールの場合、 -…
概要 『Gitで歴史を捏造する?!』問題 詳細 『Gitで歴史を捏造する?!』問題 の出題を開始しました。 https://codeiq.jp/ace/tbpgr_badge/q972 CodeIQ MAGAZINE Git、いつやるか?・・・今でしょ! #git https://codeiq.jp/magazine/2014/07/12001/ どんな…
概要 『Gitに入門しよう! 』問題 詳細 『Gitに入門しよう! 』問題 の出題を開始しました。 https://codeiq.jp/ace/tbpgr_badge/q971 CodeIQ MAGAZINE Git、いつやるか?・・・今でしょ! #git https://codeiq.jp/magazine/2014/07/12001/ どんな問題? 分…
概要 ActiveRecord | Callback 詳細 Active Recordはそのライクサイクルに様々なフックが用意されています。 Callback はクラスマクロ形式で設定する。例えば class User < ActiveRecord::Base validates :login, :email, presence: true before_validation …
概要 ActiveModel::EachValidator 詳細 ActiveRecord で、validation時に 再利用しやすく、Railsの組み込みのValidatorと同じように 呼び出せる Validator を作りたい場合、 ActiveModel::EachValidator を継承して Validator を作成します。 サンプル テー…
概要 conditional 詳細 ActiveRecord で、validation時に if や unless を利用することで、 特定の条件下での validation を行うことができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "titl…
概要 Module# bool | nil 詳細 比較演算子。self が other の子孫であるか同一クラスである場合、 true を返却 self が other の先祖のクラス/モジュールの場合、 false を返却 継承関係にないクラス同士の比較では nil を返却 サンプルコード require 'tbp…
概要 validates_with 詳細 ActiveRecordで、validation時にvalidates_withを利用することで、 任意のValidatorでチェックを行うことができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title…
概要 validates_each 詳細 ActiveRecordで、validation時にvalidates_eachを利用することで、 複数のフィールドに対して、同じチェックを行うことができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT…
概要 uniqueness 詳細 ActiveRecordで、validation時にuniquenessを利用することで、 値が一意であることをチェックします。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255), "te…
概要 strict 詳細 ActiveRecordで、validation時にstrictを利用することで、 検証エラー時に例外(ActiveModel::StrictValidationFailed)を投げます。 また、自分で任意のエラーを指定することも可能です。 サンプル テーブル定義 CREATE TABLE "articles" ( …
概要 presence 詳細 ActiveRecordで、validation時にpresenceを利用することで、 nilや空白の入力をチェックすることができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255)…
概要 on 詳細 ActiveRecordで、validation時にonを利用することで、 Modelの任意のアクション時のみValidationを実行することができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varc…
概要 numericality 詳細 ActiveRecordで、validation時にnumericalityを利用することで、 数値のみを保持しているかどうかチェックを行うことができます。 オプション一覧 option 内容 only_integer 整数のみ greater_than より大きい greater_than_or_equal…
概要 allow_nil 詳細 ActiveRecordで、validation時にallow_nilを利用することでnilを許容します。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255), "text" text, "created_at" d…
概要 allow_blank 詳細 ActiveRecordで、validation時にallow_blankを利用することで nil, 空文字 を許容します。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255), "text" text, …
概要 absence 詳細 ActiveRecordで、validation時にabsenceを利用することで、 nilや空白の入力になっていることをチェックすることができます。 presentの反対のチェックをします。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY …
概要 Module# bool | nil 詳細 比較演算子。self が other の子孫である場合、 true を返却 self が other の先祖か同一のクラス/モジュールの場合、 false を返却 継承関係にないクラス同士の比較では nil を返却 サンプルコード require 'tbpgr_utils' mo…
概要 exclusion 詳細 ActiveRecordで、validation時にexclusionを利用することで、 除外すべき値を設定することができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255), "te…
概要 inclusion 詳細 ActiveRecordで、validation時にinclusionを利用することで、 許容する値を設定することができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar(255), "text…
概要 format 詳細 ActiveRecordで、validation時にformatを利用することで、 正規表現によるパラメータチェックを行うことができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "title" varchar…
概要 length 詳細 ActiveRecordで、validation時にlengthを利用することで、 最大値 最小値 範囲 固定文字数 など、文字数に関わるチェックを行うことができます。 サンプル テーブル定義 CREATE TABLE "articles" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT…
概要 Module.new -> Module Module.new {|mod| ... } -> Module 詳細 無名モジュールを生成する。 ブロックを使用した場合は、生成したモジュールのコンテキストで ブロック内の処理を実行できる。 サンプルコード require 'tbpgr_utils' m = Module.new pri…