カピバラ:IDで入力フィールドに入力する方法


87

私はこれを持っています:

<input class="string optional" 
    id="course_group_courses_attributes_2_name" 
    name="course_group[courses_attributes][2][name]" 
    placeholder="Lengua" 
    size="15" 
    type="text" />
</div> 

そのフィールドにIDを入力するにはどうすればよいですか?

回答:


124

fill_in 最初のパラメーターとしてIDを受け入れます。

fill_in 'course_group_courses_attributes_2_name', :with => 'some text'

9
そう思いましたが、うまくいきません。いっぱいにならないようです。見つからないというエラーは出ません。それだけでは満たされません。
ネリアン2011年

問題のカピバラコードとその他の関連コードを含めることができます。
raidive

モンゴイドに問題があることを発見しました。候補のバグをリリースします。
Nerian

@ネリアンああ!あなたがそれを理解してうれしい
raidfive

解決策はありますか?
ザコスは、

32

次の方法でも実行できます。

find('Id or class here').set('some text')

7

fill_in最初は混乱していた#記号のないIDを受け入れます。また、入力フィールドがモーダルの場合、フィールドに入力する前に、トランジションを待つかフェードインする必要がある場合があります。


4

simple_form gem を使用している場合は、フォーム要素に自動的にID を付けるため、手動で要素にID を付けるのは無意味です。

有る; ただし、simple_formがidフォーム要素に従う命名規則。

object_attribute

したがって、情報を入力する場合は、次のように連絡先オブジェクトを例に考えてみましょう。

= simple_form_for @contact do |f|
  = f.input :first_name
  = f.input :last_name

次に、simple_formは、次のように各フォーム要素にそれぞれIDを自動的に生成します。

id="contact_first_name"
id="contact_last_name"

これで、この命名規則を利用して、すべてのfill_inニーズを満たすことができます。お役に立てれば。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.