Heroku - nil:在控制器动作中改变变量时出现NilClass错误

时间:2011-08-12 23:06:18

标签: ruby-on-rails-3 controller heroku

我最近在heroku的测试应用上为某些页面实现了一个视图计数器。

这是一个简单的计数器,每次访问用户显示操作时只添加一个视图。它的工作原理如下:

 class ProductsController < ApplicationController
  def show
      @product = Product.find(params[:id])
      @product.views += 1
      @product.save
  end 

  ....
 end

此计数器在我的本地主机上运行正常,但在Heroku上,出现错误:

 NoMethodError (undefined method `+' for nil:NilClass):

现在我做了一些麻烦 - @product变量肯定不是零。例如,我用

替换了views / save行
 redirect_to root_path if @product.nil?

没有重定向到root_path - 显示变量不是真的为零。为什么heroku这样做?我该怎么做才能解决它?

1 个答案:

答案 0 :(得分:0)

第一轮。

我确定您忘了运行迁移,因此.views不存在。

 rake db:migrate
相关问题