我有rails用户可以创建引脚。我想在pin显示页面上呈现一些观点。让我们说引脚是配置文件,我想渲染一个配置文件被查看的次数。
所以我安装了impressionist gem
以下是我实施它的方式:
应用/模型/ pin.rb
is_impressionable
应用/控制器/ pin_controller.rb
impressionist actions: [:show]
应用/视图/针/ show.html.erb
<%= @pin.impressionist_count %>
不幸的是,它没有呈现视图数量,而是显示0。值得注意的是,我并不关心获取唯一的IP地址视图,我希望每次用户点击图钉的show动作时都会更新视图的数量。
让我走上正轨的任何想法?
更新1:
当我在我的引脚模型上使用友好ID时,我从pin_controller中删除了以下行:
impressionist actions: [:show]
我更新了控制器的show视图:
def show
@disable_nav = true
@pin.upvoted_users
impressionist(@pin)
@pin = Pin.friendly.find(params[:id])
@commentable = @pin
@comments = @commentable.comments
@comment = Comment.new
end
但现在这是我的错误:
未定义的方法`impressions_count&#39;对于#
解决方案:
我的不好......我忘了将impressions_count运行到我的模型中:
Rails generate migration add_impressions_count_to_pins impressions_count:integer
Rake db:migrate
谢谢: - )
答案 0 :(得分:0)
在视图中
<%= @pin.impressionist_count %>
将一个以上改为一个
<%= @pin.impression_count %>
或者你可以做
<%= @pin.impressionist_count(:filter=>:ip_address) %>
根据README