Ruby on rails &引用;找不到发电机figaro:install";
我正在使用Learn-Rails.com上的“LearnRubyonRails”pdf手册 我在第13章“配置”。我们应该在这里执行命令:“rails生成figaro:install” 在第12章中,我们安装了figaro gem:“我们已经在gem文件中安装了figaro gem,并运行了bundle安装。” 当我运行该命令时,我得到:“找不到生成器figaro:install。” 我开始寻找类似的问题,我确实在这里找到了这个问题: 建议将“迁移”也包括在命令中 我把它包括在我的命令中,我让它做了一些事情,但我不认为它在做它应该做的事情Ruby on rails &引用;找不到发电机figaro:install";,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在使用Learn-Rails.com上的“LearnRubyonRails”pdf手册 我在第13章“配置”。我们应该在这里执行命令:“rails生成figaro:install” 在第12章中,我们安装了figaro gem:“我们已经在gem文件中安装了figaro gem,并运行了bundle安装。” 当我运行该命令时,我得到:“找不到生成器figaro:install。” 我开始寻找类似的问题,我确实在这里找到了这个问题: 建议将“迁移”也包括在命令中 我把它包括在我的命令中,我让它
invoke active_record
/Users/NormalUse/.rvm/gems/ruby-2.0.0-p353@learn-rails/gems/activerecord-4.0.2/lib/rails/generators/active_record/migration/migration_generator.rb:57:in `validate_file_name!': Illegal name for migration file: figaro:install (ActiveRecord::IllegalMigrationNameError)
(only lower case letters, numbers, and '_' allowed)
from /Users/NormalUse/.rvm/gems/ruby-2.0.0-p353@learn-rails/gems/activerecord-4.0.2/lib/rails/generators/active_record/migration/migration_generator.rb:10:in `create_migration_file'
然后大约还有20多行。我只是不想把一切都放在这里
作者接着说:
使用rails生成命令,figaro gem生成一个config/application.yml文件,并将其列在.gitignore文件中。gitignore文件防止config/application.yml文件保存在Git存储库中,因此您的凭据是私有的
当我转到我的项目目录,查看“config”文件夹时,我确实有一个“application”文件,但它以“.rb”而不是“yml”结尾。很明显,指挥部没有做它应该做的,对吧
有人对我有什么想法吗
我在Mac OSX 10.7.5上将Ruby 2.0.0和Rails 4.0.2与RVM一起使用(顺便说一句,欢迎来到Rails社区!),让我解释一下Figaro的功能以及如何使用(安装)它:
费加罗 费加罗是一种在开发和生产中创造的方式。在从Rails cmd调用之前,必须先安装它 与Rails中的其他Ruby Gem一样,您必须将其添加到您的
Gemfile
,该文件列出了您的应用程序将使用的所有插件。根据,您可以将其列在您的GEM文件中,如下所示:
#Gemfile
gem "figaro", "~> 0.7.0"
将此行添加到GEM文件后,需要安装它。为此,您应该运行bundle install
来运行bundler(安装程序)
完成此操作后,需要从cmd运行此命令:
rails generate figaro:install
错误 您的错误似乎表明您有迁移问题 迁移文件名非法:figaro:install (ActiveRecord::IllegalMigrationNameError) 我猜你把这个命令叫做:
rake db:migrate figaro:install
如果是这种情况,您应该通过运行
rakedb:migrate
然后railsgeneratefigaro:install
来执行任何迁移。这将分别运行这些命令,这将有助于它们工作如果您现在使用本教程而不是“rails生成figaro:install”运行命令“figaro:install”,因为figaro 1.0.0版本请尝试以下一个:
bundle exec figaro安装
谢谢您是否将
gem“figaro”
行放入项目的Gemfile
文件,然后运行bundle安装
?是的,这里的行是:gem'compass rails',“~>2.0.alpha.0”gem'figaro'就是我们使用的。然后我做了捆绑安装。你可能需要重新启动终端:非常感谢!很好,很有帮助的回答。根据这本书,它说要将这个添加到gem文件中:“gem'compass rails',“~>2.0.alpha.0'gem'figaro'”,我这样做了,然后我们运行了bundle安装,它似乎工作得很好。我调用的命令是:“railsgeneratefigaro:install”。我是不是应该把文件改成你的建议?我仍然担心输入错误的命令,把事情搞砸。再次感谢Rich,我继续用你的建议编辑了我的Gemfile,我很乐意去做!是的,这解决了问题。再次感谢!上面提到的版本(0.7.0)似乎有所帮助。当我尝试在没有指定版本的情况下安装figaro时,它安装了1.1.0(在稍后的gem卸载过程中发现)。使用较低版本可消除此“未找到发电机”错误。谢谢~困惑但感激版本1.0.0
和1.1.1
都不工作。这一个很有效。非常感谢:)顺便说一句,它实际上是“figaro安装”