データ型

カスタムエンティティスキーマではデータ型を使用できますが、これは必須ではありません。

私たちは5つのデータ型を持っています:

  • 定義 – 基本型定義
  • 厳密な型とプリミティブ型のチェック
  • 強制可能 – 与えられた入力に強制を適用するコンストラクタ付きの型
  • HTTP params特有の厳密ではない強制を適用するコンストラクタを持つフォーム
  • JSON – JSON固有の非厳格な強制変換を適用するコンストラクタを持つ型

 

定義

  • Types::Nil
  • Types::String
  • Types::Symbol
  • Types::Int
  • Types::Float
  • Types::Decimal
  • Types::Class
  • Types::Bool
  • Types::True
  • Types::False
  • Types::Date
  • Types::DateTime
  • Types::Time
  • Types::Array
  • Types::Hash

 

厳格

  • Types::Strict::Nil
  • Types::Strict::String
  • Types::Strict::Symbol
  • Types::Strict::Int
  • Types::Strict::Float
  • Types::Strict::Decimal
  • Types::Strict::Class
  • Types::Strict::Bool
  • Types::Strict::True
  • Types::Strict::False
  • Types::Strict::Date
  • Types::Strict::DateTime
  • Types::Strict::Time
  • Types::Strict::Array
  • Types::Strict::Hash

 

強制可能な

  • Types::Coercible::String
  • Types::Coercible::Int
  • Types::Coercible::Float
  • Types::Coercible::Decimal
  • Types::Coercible::Array
  • Types::Coercible::Hash

 

  • Types::Form::Nil
  • Types::Form::Int
  • Types::Form::Float
  • Types::Form::Decimal
  • Types::Form::Bool
  • Types::Form::True
  • Types::Form::False
  • Types::Form::Date
  • Types::Form::DateTime
  • Types::Form::Time
  • Types::Form::Array
  • Types::Form::Hash

 

JSON

  • Types::Json::Nil
  • Types::Json::Decimal
  • Types::Json::Date
  • Types::Json::DateTime
  • Types::Json::Time
  • Types::Json::Array
  • Types::Json::Hash

Hanamiモデルのデータ型は、dry-types宝石に基づいています。詳細はhttp://dry-rb.org/gems/dry-typesをご覧ください。


次のページ:モデル – PostgreSQL