我正在尝试从我的视图中的表单提交信息,将提交的info: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并在我的数据库中创建结果。
答案 0 :(得分:0)
您可以尝试替换它吗?
form_for @hashtag, :url => :action => 'home'
我的猜测是需要指定动作。