1
我有一個刮我想放在視圖上,我的耙子文件看起來像這樣。顯示刮擦來查看
desc "Fetch teams table"
task :fetch_teams => :environment do
require 'nokogiri'
require 'open-uri'
url = "http://www.nba.com/standings/team_record_comparison/conferenceNew_Std_Cnf.html"
doc = Nokogiri::HTML(open(url))
puts doc.css("tr.title:has(td:contains('Western')) ~tr").map {|a| a.search('td')[0].text}
end
我也曾在我的控制器
def show
@teams = []
doc.css("tr.title:has").each do |team|
@teams << item.at_css("td:contains('Western') ~tr").text
end
但
<% if @teams %>
<ul>
<% @teams.each do |team| %>
<li><%= team %></li>
<% end %>
</ul>
<% end %>
不會工作定義呢?
爲什麼?
感謝
在你的控制器,內部'@teams = []''手段@ teams'不爲零了,所以測試'如果@ teams'永遠即使'返回true,@隊'是一個空陣列。使用'if @ teams.present?'來測試它是否不爲零,如果它不是空的;-)('.blank?'方法與'.present?'完全相反) – MrYoshiji