0

Ruby on Rails アプリケーションの PostgreSQL データベースのデータ値に文字数制限を実装したいと考えています。現在、私のデータベース テーブルは次のようになっています。

create_table "applications", force: :cascade do |t|
    t.string   "name"
    t.string   "gender"
    t.date     "date_of_birth"
    t.string   "gpa"
    t.text     "essay"
    t.datetime "created_at",    null: false
    t.datetime "updated_at",    null: false
end

「エッセイ」で 10000 文字しか使用できないように変更したいと考えています。PostgreSQL に関する私の限られた理解から、テキストはデフォルトで無制限ですが、文字列は 255 文字以下です。テキストが 1,000 文字を超える場合、ユーザーがクライアントで送信ボタンを押さないように Javascript 条件を実装することを考えましたが、もちろん、技術に精通したユーザーはそれを変更できます。これを行うための最も最適な方法は何でしょうか?

4

1 に答える 1

1

Rails モデルの検証 - validates_length_ofを使用します。

レール側で、これをapplication.rbファイルに追加できます

validates_length_of :essay, :maximum => 1000

これにより、最大サイズを超えないようにすることができます。また、悪意のあるユーザーを除くすべてのユーザーに役立つため、javascript 検証も保持します。

また、テーブル名を から変更することをお勧めしますapplications。迷いやすい

于 2016-05-09T12:40:39.423 に答える