0

我正在创造一个除了生产之外的新环境。我从生产环境中复制了所有配置,更改了需要更改的内容。

因为它是服务器确实启动了,但是当我进行查询时,我得到了这个异常:

NoMethodError (undefined method `use_slug?' for nil:NilClass):
  vendor/gems/friendly_id-2.3.4/lib/friendly_id/active_record2/finders.rb:65:in `slugged?'
  vendor/gems/friendly_id-2.3.4/lib/friendly_id/active_record2/finders.rb:43:in `finder_class'
  vendor/gems/friendly_id-2.3.4/lib/friendly_id/active_record2/finders.rb:37:in `finder'
  vendor/gems/friendly_id-2.3.4/lib/friendly_id/active_record2/finders.rb:32:in `method_missing'
  vendor/gems/friendly_id-2.3.4/lib/friendly_id/active_record2/slugged_model.rb:149:in `find_one'
  app/controllers/home_controller.rb:5:in `index'

有问题的行是这样做的:

@page = Page.find("home")

我正在使用 FriendlyId 2.3.4 和 Rails 2.3.4。生产环境的代码是相同的,并且在那里工作得很好,所以我不太确定这里发生了什么......我可以看到引发异常的行确实

friendly_id_config.use_slug?

所以出于某种原因,我不知道friendly_id_config 是零。

感谢您对此问题的任何指导

4

1 回答 1

1

我通过使用生产环境加载服务器找到了解决此问题的方法。我试图使用'preprod 环境,但不知何故 FriendlyId 不喜欢那种奇怪的环境。使用 RAILS_ENV=production 加载应用程序,它运行良好。

不是解决方案,但至少可以继续......

于 2011-05-02T20:18:03.093 回答