首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >acts_as_taggable_on tag_cloud抛出未定义的方法“`empty?”对于nil:NilClass

acts_as_taggable_on tag_cloud抛出未定义的方法“`empty?”对于nil:NilClass
EN

Stack Overflow用户
提问于 2014-05-28 04:38:23
回答 1查看 622关注 0票数 1

我有点纠结于创建一个tag_cloud。我试着像acts_as_taggable_on文档一样这么做。你可以在这里找到它:https://github.com/mbleigh/acts-as-taggable-on (向下滚动到“标签云计算”)。

我的帖子助手:

代码语言:javascript
运行
复制
module PostHelper
    include ActsAsTaggableOn::TagsHelper
end 

我的post控制器:

代码语言:javascript
运行
复制
def tag_cloud
    @tags = Post.tag_counts_on(:tags).order('count desc').limit(20)
end

我在这里对文档做的唯一更改是获取它,以便显示20个最受欢迎的标签。

我的帖子索引视图:

代码语言:javascript
运行
复制
#alltags
    -tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class|
    =link_to tag.name, { :action => :tag, :id => tag.name }, :class => css_class

并且我收到以下错误:undefined method 'empty?' for nil:NilClass

代码语言:javascript
运行
复制
#alltags
    -tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class|
    =link_to tag.name, { :action => :tag, :id => tag.name }, :class => css_class

错误页面中的红色高亮显示的是这一行:-tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class|

我真的不知道我做错了什么,因为我完全按照文档操作,而且在互联网上搜索似乎也没有帮助。我找到了一种解决方案,但我真的不想这样做,我觉得必须有另一种更好的方式。这是堆栈溢出问题中的解决方案:How to display a tag cloud from Acts as Taggable On on an index page in Ruby on Rails 3.2.7?

我觉得这与我使用Rails4有关,但我不确定。

欢迎任何建议!提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-08-13 05:44:56

我也有同样的问题,这对我很有效,我希望它也能对你起作用。

在你的post_controller中添加一个before过滤器,如下所示。

代码语言:javascript
运行
复制
class PostsController < ApplicationController
...
  before_action :tag_cloud
...
  def tag_cloud
    @tags = Post.tag_counts_on(:tags).order('count desc').limit(20)
  end
...
end

这样做之后,我在这一行中还出现了一个路由错误:

代码语言:javascript
运行
复制
link_to tag.name, { :action => :tag, :id => tag.name }, :class => css_class

我不得不像这样更改代码行:

代码语言:javascript
运行
复制
<%= link_to tag.name, tag_path(tag.name), :class => css_class %>

现在一切都在我的应用程序上运行了。我希望这能对你有所帮助。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23898489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档