rails console错误需要’./example_user’
我正在使用http://ruby.railstutorial.org/chapters/rails-flavored-ruby#sec:a_user_class上的轨道教程
我被告知要输入require './example_user'
但是……我收到此错误
LoadError: cannot load such file -- example_user from /Users/snook3/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in require'
然后是进一步的错误
我想我没有正确链接到该文件夹,任何人都可以让我知道我应该链接到哪里吗?
是的,只需将文件移动到实际的根目录。 做mv example_user.rb* /
应该这样做。
另外,如果在需要文件后,您不会担心返回“true”而不是[“User”]。
您可以使用Rails.root
来获取当前的Rails项目根目录。
所以require Rails.root + 'path_to_example_user'
会加载文件。
你也可以试试reload!
命令,它将重新加载整个Rails环境。
尝试使用文件的绝对路径…像这样:
require '/Users/snook3/my/project/folder/example_user.rb'
无需指定完整路径,只需将.rb附加到文件名: require './example_user.rb'
。
我有这个完全相同的问题,但不熟悉Unix我只能这样解释它。
1)我在Sublime Text 2中创建了example_user.rb文件,并将其保存到应用程序根文件夹中。
2)“要求”对我来说不起作用,就像OP一样。 即使我可以在文件夹中看到该文件。
3)但是,打开终端窗口,导航到应用程序根目录,然后输入“dir”,我可以看到文件名之前有一个“/”! 不确定发生的原因是什么/为什么,或者为什么它在资源管理器中不可见(或者不管用什么类似的Unix – Nautilus?)。
4)从终端内重命名文件后,一切正常。 但如果这对你们任何一个Unix / Rails人员都有意义的话,我会喜欢解释出了什么问题。
尝试
touch example_user.rb
在Unix终端。 然后将代码添加到此文件中。
本教程告诉您“在应用程序根目录中创建文件example_user.rb”。 我错误地把它放在app文件夹中并得到了相同的错误消息。
如果您将文件移动到项目根目录中,则require './example_user'
才能工作。