2012-01-14 28 views
0

私はtwitterアカウントにツイートを投稿するのに使いたいフォームに苦労しています。 私はgem 'omniauth-twitter'とgem 'twitter'を使用しています。投稿フォームを使ってツイッターを投稿する

私のフォームはproducts_controller.rbの中に住んでいるTwitter.update()にコンテンツを送信していません。理由はわかりません。

ここに私のproducts_controller.rb

def tweetfunc 
if param[:tweet] != nil then 
    Twitter.update(param[:tweet]) 
else 
    #TODO display an error message 
end 

エンドの内側

から私のindex.html.erb

<%= form_tag do %> 
<fieldset> 
    <legend>140 char limit</legend> 
    <div> 
     <label for="mytweet">mytweet:</label> 
     <%= text_field_tag :my_tweet, params[:my_tweet] %> 
    </div> 
    <div> 
     <%= submit_tag "tweet" %> 
    </div> 
</fieldset> 
<% end %> 

から、私は今のところ...

を持っているコードです私のroutes.rb

controller :products do 
post 'tweet' => :tweetfunc 

end

....どのようなアイデアですか?

<%= form_tag tweet_products_path do %> 

、あなたは問題ないはずです。このようなそこのあなたのコントローラに

<%= form_tag do %> 

とURLアウト:

+0

何が問題ですか? –

+0

私のフォームは、products_controller.rbの中にあるTwitter.update()にコンテンツを送信していないため、理由を特定できません。 – thefonso

答えて

0

は、あなたの投稿index.html.erbの最初の行を確認してください。コントローラで

0

それ以外
Twitter.update(params[:my_tweet]) if params[:my_tweet].present? 

私は強くつまり、あなたはRESTアーキテクチャに従う示唆し、ActiveModel準拠のツイートクラスがあり、そのクラスのインスタンスにフォームビルダヘルパーを使用しています。 for_for @tweet do |f| ...