我想從我的視圖中的表單提交信息,它將提交的信息: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">— @<%= 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和創建我的數據庫中的結果。
在你的hashtags_controller中是否有更多的方法(如創建)?相關路線是什麼樣的? –
這是完整的hashtags_controller文件。在路由中沒有真正的自定義,root:to =>「hashtags#home」 – thebusiness11
我不明白你想要達到什麼目的,但是如果你發送這個表單,它應該包含關鍵''hashtag「=> {」 hashtag「=><你填寫的內容>}'在我相信的參數中。 – 244an