2011-08-05 16 views
0

私はレールフォームを持ち、各フィールドのラベルと入力ボックスはdiv class="field"の下にあります。ユーザーが無効なデータを入力すると、railsによってクラスがdiv class="field_with_errors"に変更されます。私の質問は、これが起こると、入力ボックスに事前定義されたテキストをどのように埋め込むのでしょうか?Rails:無効なデータにフォームを記入してください

私はこれがjavascriptで可能であることを認識していますが、実装方法についてはわかりません。

答えて

1

あなたはerrors[:attribute]を使用して、サーバー側でこれを行うことができます。 ruby on rails guidesについて詳しくはこちらをご覧ください。

+0

ありがとうございました。 –

0

テーブルを作成するときに列の既定値を指定すると、これらはフォームの事前入力に使用されます。ここで

は、フォームで使用されているデフォルト値を指定し、移行の例です:

class CreateDevices < ActiveRecord::Migration 
    def self.up 
    create_table :devices do |t| 
     t.string :name 
     t.string :msgs_checked, :default => true 
     t.string :app_version, :default => 'Not Known' 
     t.boolean :active, :default => true 

     t.timestamps 
    end 
end 
+0

これは、どのような状況でもフォームのデフォルトを指定します。私は、少なくとも1回エラーを出して(検証に失敗して)サブミットされた後でなければ、列のデフォルトを指定したい。 (つまり、検証に失敗したか、フォームのクラスが変更されて何らかのテキストが入力されたことを確認するには何らかの方法が必要です) –

関連する問題