我有这行代码:
output = `rails_best_practices /home/jordi/src/adventureManager/app`
当我在irb中或在任何.rb内运行时,我从ruby输出中调用.rb得到一些内容。
但是当我在模型输出中调用它时会得到一个空字符串。
而不是其他命令,如
output = `cat /home/jordi/src/adventureManager/app/*`
将无处不在,包括内部模型 我对此问题一无所知
答案 0 :(得分:4)
什么是rails_best_practices
?它在你的道路上吗?我的猜测是,当你在模型中运行它时,你找不到stderr的命令。
答案 1 :(得分:1)
或者您可以尝试在应用根目录中使用以下内容:
output = `bundle exec rails_best_practices /home/jordi/src/adventureManager/app`
祝你好运!
答案 2 :(得分:0)
我在开发 Rails 6 应用程序时也有同样的担忧。
将 rails_best_practices gem 添加到我的 Gemfile
后:
group :development, :test do
gem 'rails_best_practices', '~> 1.20'
end
我运行以下命令将其安装到我的应用程序中:
bundle install
但是,当我运行命令 rails_best_practices .
时,出现以下错误:
rails_best_practices: command not found
这是我修复它的方法:
问题是 rails_best_practices 可执行文件的路径在我当前的shell/终端中尚不可用。
我只是关闭了当前的外壳/终端,然后重新打开了一个新的。
这次当我运行 rails_best_practices .
时,效果很好。
仅此而已。
我希望这会有所帮助