【问题标题】:Using stock quote from stock_quote gem as tag from acts_as_taggable gem?使用来自 stock_quote gem 的股票报价作为来自acts_as_taggable gem 的标签?
【发布时间】:2015-06-30 16:06:28
【问题描述】:

所以我使用acts_as_taggable gem 提供的标签。这些帖子是我要标记的。我怎么能说像 =>

这样的东西(这里是伪代码)
if a collection of Posts has a tag with a corresponding StockQuote, display the stock quote

所以现在我有一个acts_as_taggable 的帖子资源。这是我的帖子索引操作现在的样子:

def index
@stock = StockQuote::Stock.quote("symbol")

if params[:tag]
@posts = Post.tagged_with(params[:tag])
else
 @posts = Post.order('cached_votes_score desc')
end

end

所以我必须以某种方式遍历所有@posts tagged_with params[:tag] 并将标签与股票报价进行比较。如果匹配,则在所有@posts tagged_with params[:tag] 的索引上显示引用。我将尝试弄清楚如何尽快将每个帖子限制为 1 个标签

如果帖子的 :tag 恰好是股票报价,我如何使用该标签访问股票报价?

【问题讨论】:

  • 如果你能多描述一下这个机制,你会增加你的机会。否则,您可能会将观众限制在那些了解宝石的人中。
  • 如何知道标签是否为股票代码?
  • 这就是我想要弄清楚的

标签: ruby-on-rails ruby


【解决方案1】:

我想你会想做这样的事情:

@symbols = @post.tag_list
@quotes = StockQuote::Stock.quote(@symbols)

由于一个帖子实际上可以用多个符号标记,因此您需要一次获取所有符号,然后在视图中迭代结果。比如:

<% @quotes.each do |quote| %>
  <%= "#{quote.symbol}: #{quote.ask}" %>
<% end %>

我对宝石不太熟悉,但快速浏览一下,似乎这样的东西会起作用。

此外,您将问题表述为好像您有一个 Post 的单个实例,但随后显示您的索引操作,该操作将拉取一组 Post。我提供的示例适用于单个帖子(查看帖子页面的用户)。

【讨论】:

  • 感谢您的回答。我实际上是在寻找帖子的集合(改变了问题,对不起),但我可能无法从中弄清楚我不确定
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-08
  • 2015-11-06
  • 1970-01-01
  • 2012-12-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多