2011-11-27 61 views
1

我想操纵从雅虎财经为他们的标准报价使用Ruby on Rails返回的哈希。我是Ruby新手,在尝试运行程序时,在视图.erb文件中出现编译错误。我的目标相对简单 - 我想为散列中包含的每个报价显示股票代码,买价和卖价以及公司名称。处理雅虎金融行情哈希在Rails 3

我将散列存储在名为@quote_info的实例变量中,并将此散列传递给View。

视图中的代码是folows:

<h1>Stock Quote from Yahoo Finance</h1> 

    <p>Stock Symbol(s) Requested: <%= @quote_list %> </p> 



    <table> 
    <tr> 
    <th>Symbol</th> 
    <th>Bid Price</th> 
    <th>Ask Price</th> 
    </tr> 

    <% @quote_info.each |stock| do %> 
    <tr> 
    <td><%= stock.symbol %></td> 
    <td><%= stock.bid %></td> 
    <td><%= stock.ask %></td> 
    </tr> 
    <% end %> 
    </table> 

我得到一个编译错误的每个语句行,指着后做长期。

compile error 
/home/lvl9/waf_projects/squotes_app/app/views/screenquotes/show.html.erb:18: syntax error, unexpected kDO 
');@output_buffer.append_if_string= @quote_info.each |stock| do 
                  ^

任何想法将不胜感激。我正在撕裂我的头发,不能再失去任何东西。

回答

1

只是放错了地方do:现在

<% @quote_info.each do |stock| %> 
+0

其拒绝stock.symbol名词 - seesymbol以下为未定义method.Hash结构: – JimmyBandit

+0

@JoeMcGouran不能与帮助,除非你有更多的信息;我不知道应该在那里。 –

+0

看看下面编译细节:在Screenquotes NoMethodError#表明 显示/home/lvl9/waf_projects/squotes_app/app/views/screenquotes/show.html.erb其中行#24提出: 未定义的方法'符号”为“IBM “:字符串 提取的来源(在#24附近): 21: 22:<%@ quote_list.each do | stock | %> 23: 24:​​<%= stock.symbol%> 25:​​<%= stock.name%> 26:​​<%= stock.bid.to_s%> 27:​​<%= stock.ask.to_s%> Rails.root:/ home/lvl9/waf_projects/squotes_app - – JimmyBandit