2012-12-01 38 views
0

我想從我的視圖中的表單提交信息,它將提交的信息:hashtag傳遞到模型中,然後使用該信息運行模型。但似乎是我的模型只是用「hashtag」而不是表單信息來運行。我相信它很接近。我無法弄清楚接下來要去哪裏。從視圖提交表單信息到模型,然後調用模型運行

home.html.erb

<div class="row"> 
     <div class="span6 offset2"> 

       <%= form_for :hashtag do |f| %> 
       <div class="input-prepend input-append"> 
       <span class="add-on swag">#</span> 

       <%= f.text_field :hashtag , class: "span3 inverse", id:"appendedPrependedInput" %> 

       <%= f.submit "Swag!", class: "btn btn-inverse" %> 
       <% end %> 

     </div> 
     </div> 
     <div class="span4"> 
     <div id="hashtags"> 
      <% @random_hashtags.each do |hashtag| %> 
      <blockquote><%= hashtag.content %></blockquote> 
      <div class="from">&mdash; @<%= hashtag.screen_name %></div> 
     <% end %> 
     </div> 
    </div> 
</div> 

hashtag.rb

class Hashtag < ActiveRecord::Base 
    attr_accessible :content, :profile_image, :screen_name, :tweet_date, :tweet_id 

    def self.pull_hashtag 
    Twitter.search("%#{hashtag}").results.map do |tweet| 
    unless exists?(tweet_id: tweet.id) 
     create!(
      tweet_id: tweet.id, 
      content: tweet.text, 
      profile_image: tweet.profile_image_url, 
      screen_name: tweet.from_user, 
      tweet_date: tweet.created_at 
      ) 
     end  
    end 
    end 
end 

hashtags_controller

class HashtagsController < ApplicationController 

    def home 
     @random_hashtags = Hashtag.order("RANDOM()").limit(4) 
    end 

    def create 
     @hashtag = Hashtag.pull_hashtag(params[:search]) 
    end   
end 

我現在正在使用的更新的代碼,因爲我沒有發佈任何東西到模型

它雖然提交,但似乎沒有從那裏。

更新2,

我想發佈信息到數據庫中,通過採取從表單中的信息,在其上運行一個Twitter.search和創建我的數據庫中的結果。

+0

在你的hashtags_controller中是否有更多的方法(如創建)?相關路線是什麼樣的? –

+0

這是完整的hashtags_controller文件。在路由中沒有真正的自定義,root:to =>「hashtags#home」 – thebusiness11

+0

我不明白你想要達到什麼目的,但是如果你發送這個表單,它應該包含關鍵''hashtag「=> {」 hashtag「=><你填寫的內容>}'在我相信的參數中。 – 244an

回答

0

你可以嘗試用這個替換嗎?

form_for @hashtag, :url => :action => 'home' 

我的猜測是該動作需要指定。

+0

給出各種錯誤':語法錯誤,意外tASSOC,期待keyword_end ...或@hashtag,:url =>:action =>'主頁'do | f | @output_buffer ... ... ^' – thebusiness11

+0

應該是'form_for @hashtag,:url => {:action =>'home'}'在這種情況下(不知道這是否是解決方案) – 244an

+0

給予錯誤'未定義的方法'model_name'爲NilClass: ' – thebusiness11