Ruby:私のフォームにアクセスするために機械化を使用する問題!

StackOverflow https://stackoverflow.com/questions/2423971

  •  19-09-2019
  •  | 
  •  

質問

楽しみのために、私は非常に小さなRailsブログ(ちょうどHello World)を書きました。今、私は機械化を使用して投稿を作成したいと思います。そこで、Ruby Progを作成してコーディングを開始しました。

私の問題は次のとおりです。Railsは、すべての入力を含む私のフォーム要素を作成します。 HTMLでは、私の入力は次のように見えます:

<input type="text" size="30" name="post[title]" id="post_title">

また

<textarea rows="20" name="post[description]" id="post_description" cols="40"></textarea>

まあ...これが機械化を使用した私のルビーPROGです:

require 'rubygems'
require 'mechanize'

agent = WWW::Mechanize.new

page = agent.get('http://localhost:3000/posts/new')
target_form = page.form_with(:class => 'new_post')
target_form.post[title] = "test"
target_form.post[description] = "test"
page = agent.submit(target_form)
puts "end"

私は自分のエラーがどこにあるか知っていますが、それを修正する方法がわかりません。 at target_form.post [title] = "test"クラッシュします。

undefined method `name' for nil:NilClass (NoMethodError)

私は(私を修正してください)、それは入力名が原因であると思います。どうすれば修正できますか?

役に立ちましたか?

解決

どうですか

target_form.field_with(:name => "post[title]").value = "test"
target_form.field_with(:name => "post[description]").value = "test"
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top