2011-08-14 77 views
1

我想知道是否我錯過了某些東西或者是否發現了錯誤;希望別人能幫助。水豚找不到名稱中帶下劃線的元素

我在窗體上有很多字段。所有具有單個單詞名稱的人都可以找到並填充,沒有問題。所有具有多個單詞名稱的人都不會。這是預期的行爲?

例如:

fill_in "Something", :with=> "value" 

工作

fill_in "Something Else", :with => "another" 

我試圖將其更改爲:

fill_in "something_else", :with => "another" 

和失敗過,同樣的消息

"cannot fill in, no text field, text area or password field with id, name, or label 'something_else'" 

我想知道在這一點上,如果水豚期待_是邊界,所以它不能找到他們,如果他們有這樣的多詞。其他人遇到這個問題?有沒有修復?

回答

1

經過一段時間的修補之後,我發現要做到這一點的方法是實際傳遞您希望存在的全名屬性(我猜測匹配器無法推斷出哪些空間部分是對象名字副財產的名稱)。它遵循以下形式:

fill_in "obj[one_two]", :with=> "value" 

所以我們說要填寫在用戶登記表,它可能是:

fill_in "user[password_confirmation]", :with => @password 

給您以前填充@password

0

我知道這是一個古老的問題,但這在水豚(2.3.0)爲我工作,並可能幫助其他人:

fill_in "Password confirmation", with: "test" 

注意小寫字母「c」,這也適用於嵌套形式的情況。

因此,從我能收集的只有字段名的第一個字母應該是大寫,如果它包含空格。