获取:“无法找到SessionsHelper,预计它将在helpers / sessions_helper.rb中定义”

我在加载/ login /时在我的日志文件中收到以下内容。

Started GET "/login" for 120.138.93.108 at 2016-01-02 03:06:24 +0000

ActionController::RoutingError (Couldn't find SessionsHelper, expected it to be defined in helpers/sessions_helper.rb): app/controllers/application_controller.rb:1:inapp/controllers/sessions_controller.rb:1:in ‘中

但是,sessions_helper.rb确实存在于helpers文件夹中。 此外,application_controller.rb和sessions_controller.rb定义为Classes,session_helper.rb定义为模块。

可能有什么不对?

我遇到了类似的问题:

 Couldn't find AgileTeamsHelper, expected it to be defined in helpers/agile_teams_helper.rb 

事实certificate我在我的助手中定义了这个:

 module AgileTeamHelper def td_color(text) if text == "Green" "green-background" elsif text == "Yellow" "yellow-background" elsif text == "Red" "red-background" end end end 

代替:

 module AgileTeamsHelper def td_color(text) if text == "Green" "green-background" elsif text == "Yellow" "yellow-background" elsif text == "Red" "red-background" end end end 

在这种情况下,我错过了’AgileTeamsHelper’中的’s’。 我相信rails会寻找一个与帮助器相同的模块,但是驼峰很有用。 IE浏览器。 'agile_teams_helper'.camelize – > "AgileTeamsHelper"

我通过重新创建helpers / sessions_helper.rb(使用touch)并使用完全相同的内容填充它来解决了这个问题。 很奇怪,但它确实奏效了。

我只是按照古老的建议:

如有疑问,请重新启动服务器

这对我来说已经足够了。 我完全确定代码没问题。

就我而言,我有一个:

包括ModuleName

指向模型中的非现有模块。 这个已被删除,但我错过了参考。

我的应用程序中的每个助手都有完全相同的“Coul not find …”错误,因此很难找出问题的来源。