t.integer size(1) and size(2).
2つの列があり、最大サイズ1(つまり、最大9)と最大サイズ2(つまり、最大99)として宣言する必要があります。移行スクリプトでこれをどのように宣言する必要がありますか。
質問する
15733 次
2 に答える
17
その列の値を1〜99の範囲に制限する必要があるということですか?
整数列を作成したら、ActiveRecord検証をモデルに追加できます。
validates_numericality_of :field_name, :in => 1..99
于 2012-11-21T17:24:27.370 に答える
-7
移行レコードに:limitを設定できるはずです。こちらのドキュメントを確認してください-http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html#method-i-column
例:add_column:my_tbl、:myint、:integer、:limit => 9
これにより、列の長さが設定されます。つまり、最大9桁の整数のみが許可されます。
この列のデータ入力を制限する場合は、モデルで検証を行う必要があります。http://guides.rubyonrails.org/active_record_validations_callbacks.html#lengthをご覧ください
于 2012-11-21T17:21:24.027 に答える