我不确定,但这可能与崩溃的计算机有关。重新启动后(崩溃后)我得到一个失败的帮助器错误,其中帮助程序名称错误。切换分支对结果没有影响。
错误是:
缺少帮助文件助手// users / xxxx / sites / xxxx / app / helpers / accounts_helper.rb_helper.rb
我尝试更新宝石,卸载了rails并重新安装,检查了帮助程序名称以及包含的任何帮助程序。我还审查了git日志并检查了最近更改的代码。没有运气。
Started GET "/" for 127.0.0.1 at 2015-01-09 17:53:57 -0700
ActiveRecord::SchemaMigration Load (1.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
AbstractController::Helpers::MissingHelperError - Missing helper file helpers//users/xxxx/sites/xxxx/app/helpers/accounts_helper.rb_helper.rb:
actionpack (4.2.0) lib/abstract_controller/helpers.rb:151:in `rescue in block in modules_for_helpers'
actionpack (4.2.0) lib/abstract_controller/helpers.rb:148:in `block in modules_for_helpers'
actionpack (4.2.0) lib/abstract_controller/helpers.rb:144:in `modules_for_helpers'
actionpack (4.2.0) lib/action_controller/metal/helpers.rb:93:in `modules_for_helpers'
actionpack (4.2.0) lib/abstract_controller/helpers.rb:108:in `helper'
actionpack (4.2.0) lib/action_controller/railties/helpers.rb:17:in `inherited'
app/controllers/application_controller.rb:1:in `<top (required)>'
activesupport (4.2.0) lib/active_support/dependencies.rb:457:in `block in load_file'
activesupport (4.2.0) lib/active_support/dependencies.rb:647:in `new_constants_in'
activesupport (4.2.0) lib/active_support/dependencies.rb:456:in `load_file'
activesupport (4.2.0) lib/active_support/dependencies.rb:354:in `require_or_load'
activesupport (4.2.0) lib/active_support/dependencies.rb:494:in `load_missing_constant'
activesupport (4.2.0) lib/active_support/dependencies.rb:184:in `const_missing'
app/controllers/pages_controller.rb:1:in `<top (required)>'
activesupport (4.2.0) lib/active_support/dependencies.rb:457:in `block in load_file'
activesupport (4.2.0) lib/active_support/dependencies.rb:647:in `new_constants_in'
activesupport (4.2.0) lib/active_support/dependencies.rb:456:in `load_file'
activesupport (4.2.0) lib/active_support/dependencies.rb:354:in `require_or_load'
activesupport (4.2.0) lib/active_support/dependencies.rb:494:in `load_missing_constant'
activesupport (4.2.0) lib/active_support/dependencies.rb:184:in `const_missing'
activesupport (4.2.0) lib/active_support/inflector/methods.rb:261:in `block in constantize'
activesupport (4.2.0) lib/active_support/inflector/methods.rb:259:in `constantize'
activesupport (4.2.0) lib/active_support/dependencies.rb:566:in `get'
activesupport (4.2.0) lib/active_support/dependencies.rb:597:in `constantize'
actionpack (4.2.0) lib/action_dispatch/routing/route_set.rb:69:in `controller_reference'
actionpack (4.2.0) lib/action_dispatch/routing/route_set.rb:59:in `controller'
actionpack (4.2.0) lib/action_dispatch/routing/route_set.rb:38:in `serve'
actionpack (4.2.0) lib/action_dispatch/journey/router.rb:43:in `block in serve'
actionpack (4.2.0) lib/action_dispatch/journey/router.rb:30:in `serve'
actionpack (4.2.0) lib/action_dispatch/routing/route_set.rb:802:in `call'
bullet (4.14.0) lib/bullet/rack.rb:10:in `call'
meta_request (0.3.4) lib/meta_request/middlewares/app_request_handler.rb:13:in `call'
meta_request (0.3.4) lib/meta_request/middlewares/meta_request_handler.rb:13:in `call'
rack (1.6.0) lib/rack/etag.rb:24:in `call'
rack (1.6.0) lib/rack/conditionalget.rb:25:in `call'
rack (1.6.0) lib/rack/head.rb:13:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/params_parser.rb:27:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/flash.rb:260:in `call'
rack (1.6.0) lib/rack/session/abstract/id.rb:225:in `context'
rack (1.6.0) lib/rack/session/abstract/id.rb:220:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/cookies.rb:560:in `call'
activerecord (4.2.0) lib/active_record/query_cache.rb:36:in `call'
activerecord (4.2.0) lib/active_record/connection_adapters/abstract/connection_pool.rb:647:in `call'
activerecord (4.2.0) lib/active_record/migration.rb:378:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (4.2.0) lib/active_support/callbacks.rb:88:in `_run_callbacks'
activesupport (4.2.0) lib/active_support/callbacks.rb:734:in `_run_call_callbacks'
activesupport (4.2.0) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (4.2.0) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/reloader.rb:73:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
better_errors (2.1.0) lib/better_errors/middleware.rb:84:in `protected_app_call'
better_errors (2.1.0) lib/better_errors/middleware.rb:79:in `better_errors_call'
better_errors (2.1.0) lib/better_errors/middleware.rb:57:in `call'
rack-contrib (1.2.0) lib/rack/contrib/response_headers.rb:17:in `call'
meta_request (0.3.4) lib/meta_request/middlewares/headers.rb:16:in `call'
web-console (2.0.0) lib/action_dispatch/debug_exceptions.rb:18:in `middleware_call'
web-console (2.0.0) lib/action_dispatch/debug_exceptions.rb:13:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
railties (4.2.0) lib/rails/rack/logger.rb:38:in `call_app'
railties (4.2.0) lib/rails/rack/logger.rb:20:in `block in call'
activesupport (4.2.0) lib/active_support/tagged_logging.rb:68:in `block in tagged'
activesupport (4.2.0) lib/active_support/tagged_logging.rb:26:in `tagged'
activesupport (4.2.0) lib/active_support/tagged_logging.rb:68:in `tagged'
railties (4.2.0) lib/rails/rack/logger.rb:20:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/request_id.rb:21:in `call'
rack (1.6.0) lib/rack/methodoverride.rb:22:in `call'
rack (1.6.0) lib/rack/runtime.rb:18:in `call'
activesupport (4.2.0) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
rack (1.6.0) lib/rack/lock.rb:17:in `call'
actionpack (4.2.0) lib/action_dispatch/middleware/static.rb:113:in `call'
rack (1.6.0) lib/rack/sendfile.rb:113:in `call'
rack-mini-profiler (0.9.2) lib/mini_profiler/profiler.rb:300:in `call'
railties (4.2.0) lib/rails/engine.rb:518:in `call'
railties (4.2.0) lib/rails/application.rb:164:in `call'
rack (1.6.0) lib/rack/lock.rb:17:in `call'
rack (1.6.0) lib/rack/content_length.rb:15:in `call'
rack (1.6.0) lib/rack/handler/webrick.rb:89:in `service'
/Users/Hank/.rvm/rubies/ruby-2.2.0-rc1/lib/ruby/2.2.0/webrick/httpserver.rb:138:in `service'
/Users/Hank/.rvm/rubies/ruby-2.2.0-rc1/lib/ruby/2.2.0/webrick/httpserver.rb:94:in `run'
/Users/Hank/.rvm/rubies/ruby-2.2.0-rc1/lib/ruby/2.2.0/webrick/server.rb:294:in `block in start_thread'
答案 0 :(得分:50)
问题似乎已在最新版本的ruby,ruby 2.2.0中引入。
尝试此实验:
在rails console /或irb中:
[1] pry(main)>File.expand_path ("./")
=> "/users/xxxx/Sites/xxxx"
并在终端窗口中:
]$ pwd
/users/xxxx/sites/xxxx
看到不同的情况?如果你得到了,那么在积极支持的深处,正则表达向南。一个修复是删除“sites”目录并重新创建。也可以使用finder重命名sites目录,将其重命名为“foobar”,然后返回“sites”。
第h
当我和另一个人一起调试时,路径中有一个混合大小写的目录名就足够了。我们将它重命名为'farknerd',然后将原始版本重命名为原文,除了所有小写字母外,它都有效。
答案 1 :(得分:11)
对我来说,文件夹&#39; sites&#39;只需要重命名,而不是整个目录。
从我的用户根目录我做了这个......
mv sites sites1
mv sites1 sites
答案 2 :(得分:8)
根据Rob的说明,我发现有必要将文件路径中的每个文件夹重命名为+小写,直到&#39;用户&#39;在我的错误消失之前。
答案 3 :(得分:3)
我也是一个案例问题。我最初在 C:\ users \ pxxx \ projects \ odot 文件夹中抛出了上述错误。当我改为 C:\ Users \ Pxxx \ projects \ odot 时,它似乎正常工作
答案 4 :(得分:1)
我遇到了同样的问题,但没有用户创建的目录中包含大写字母......只有/Users
。
我尝试升级到ruby 2.2.1 - 这没有解决它。
我非常犹豫地通过做同样的区分大小写&#34;修复&#34;在我的/Users
目录中:
cd /
sudo mv Users users1
sudo mv users1 users
我还没有看到是否会破坏其他任何东西......
答案 5 :(得分:1)
我第一次创建helpers
目录后出现此错误。
运行spring stop
并重试后问题就消失了。
答案 6 :(得分:1)
这一直困扰着我。尝试重命名文件或目录时,我没有找到任何乐趣。
然而,我确实找到了一个非常简单的修复方法。只需进入项目的主目录并运行&#39;捆绑安装&#39; 。它安装了所有的gem依赖项(没有覆盖我编写的任何数据),这有效地修复了任何问题。打开rails服务器并欢呼,恢复正常服务。
希望有所帮助!
答案 7 :(得分:1)
我使用粉末 gem时遇到了同样的问题。以下是我修复它的方法:
powder unlink
powder link
答案 8 :(得分:1)
我遇到了同样的问题,显然与Dropbox有关,但并不像其他人所说的那样区分大小写。
按照@ Rob的回答,[1] pry(main)>File.expand_path ("./")
的输出结果为:
/Users/xxxx/dropbox/xxxx
并且]$ pwd
的输出也导致:
/Users/xxxx/dropbox/xxxx
按照@ Beengie的说明,从我的用户根目录,我做了:
mv Dropbox Dropbox1
mv Dropbox1 Dropbox
这解决了我的问题 - 直到我重新启动,此时我必须再次执行操作。我还在寻找永久性修复方法。
答案 9 :(得分:1)
问题..
对我来说错误的同样问题
"missing helper file app/helpers/application_helper.rb_helper.rb"
该应用程序位于目录树
中/Users/grantsayer/Documents/Work/recipes
所以在进行测试以显示路径时,无论是在终端内还是在红宝石环境中,我都发现了以下内容:
<强> 1。 Ruby环境
Grants-MacBook-Pro:Recipes grantsayer $ irb
2.2.0:001&gt;
2.2.0:002&gt; File.expand_path( “./”) =&GT; “/用户/ grantsayer /文档/工作/配方”
<强> 2。 Unix终端
Grants-MacBook-Pro:Recipes grantsayer $ pwd /用户/ grantsayer /文档/工作/配方
在此阶段运行rails服务器并导航到http://localhost:3000会导致错误的应用程序帮助程序错误。正如其他人所描述的那样,这个错误似乎是ruby中导致文件路径上的大小写转换的错误。
我通过将食谱文件夹重命名为食谱解决了这个问题,以便 irb 中的ruby环境检查与本地文件系统匹配。
答案 10 :(得分:0)
我的一个目录中有一个破折号:the-mission也导致错误。除了确保所有父目录都是小写(包括将桌面更改为桌面)之外,还要确保目录名中的唯一字符是字母。
答案 11 :(得分:0)
我得到了与上面相同的错误,但这不是由于案件问题。它最终归结于各种因素。我安装了两个ruby版本管理器-rvm和rbenv-我使用的是旧的gem安装程序。我不得不卸载rvm(如何从我的系统中删除RVM(Ruby版本管理器)?)并重新安装rbenv(brew重新安装rbenv)并升级到最新版本的ruby。然后我不得不更新rubygems(gem update --system)。然后,重新安装所有宝石并重新启动,一切都已修复。
基本上,我的ruby经理指向旧版本的ruby并使用过时版本的gem installer(2.2.0)。只需升级到rubygems,您就可以解决问题。
我花了一天半的时间来解决这个问题。希望这可以节省一些时间和挫折。
答案 12 :(得分:0)
在Ruby 2.2.0上遇到同样的问题,我只是通过从
更改文件夹结构来修复它/Users/xxx/Documents/Ruby/xxxx
到
/Users/xxx/Documents/ruby/xxxx
小写文件夹名称
答案 13 :(得分:0)
我正在运行2.2.0并按照@Rob的说法进行操作,发现由于它有一个大写的名称,这是我的应用程序根目录。我也没有将应用程序保留在Sites目录中,而是另一个兄弟目录。
答案 14 :(得分:0)
在我的情况下我使用的是Windows。使用Git shell,我在尝试从thinkbot安装gem管理时不断收到此错误。不断给我错误的命令&#34; AbstractController :: Helpers :: MissingHelperError&#34;,是:
$ rails generate administrate:install
我没有将我的文件夹重命名为小写,因为有很多答案建议。我改为使用了窗口的cmd。它运作得很好。
答案 15 :(得分:0)
在我更新了Rubymine之后发生了这件事。我所做的只是将我的网站文件夹从HelloWord
更改为helloword
。删除了资本和其他符号,它工作正常。
答案 16 :(得分:0)
使用命令生成新的控制器后,我遇到了这个问题
rails generate controller Microposts
它破坏了我的整个测试套件。
如果我使用rails destroy controller Microposts
它将再次变为绿色。
我通过运行gem update
销毁控制器后,一旦更新宝石,便再次生成它。
奇怪的是,重新生成时我收到了此消息:
“名称'MicropostsHelper'已在您的应用程序中使用,或已由Ruby on Rails保留。请选择一个替代方法,或使用--force跳过此检查并再次运行此生成器。”
在我更新自己的宝石之前没有出现,并且不再有任何问题。
我使用RVM并用于确保我在我的应用所使用的同一版本的Ruby上运行命令。