ブール型のスキーマの属性の検証を記述する必要がありますか?ブール型の検証
create_table "table_name", :force => true do |t|
t.boolean "column", :default => true
end
「asdasd」に設定する列は、.saveの後にfalseと評価されます。 POSTを通して送信された奇妙な値が気になる必要があります(コントローラーの更新メソッドを書いています)危険につながる可能性がありますか?
ブール型のスキーマの属性の検証を記述する必要がありますか?ブール型の検証
create_table "table_name", :force => true do |t|
t.boolean "column", :default => true
end
「asdasd」に設定する列は、.saveの後にfalseと評価されます。 POSTを通して送信された奇妙な値が気になる必要があります(コントローラーの更新メソッドを書いています)危険につながる可能性がありますか?
一般的には、特にそのフィールドが機密フィールドである場合は、検証する方が良いでしょう。フィールドが再帰的な請求チェックを可能にするフィールドのようなもので、ランダムな文字列が送信される場合、本当になるでしょう。バリデーションを追加するのは良いことですが、Railsでそれほど簡単だと考えています:)
それ以外の場合は予期しない結果が得られる可能性があります。これはあなたに役立つはずです:
validates_inclusion_of :column, :in => [true, false]
これはnull値も防止します。許可する場合は、:allow_nil => true
と設定してください。