如何在Rails环境中的RubyMine或IDEA中运行临时文件?

And*_*rew 3 ruby ruby-on-rails intellij-idea rubymine ruby-on-rails-4

我想使用临时文件作为我的Rails应用程序中原型设计的控制台替代品.我发现最简单的解决方案是手动要求环境,如下所示:

require '/project/path/config/environment.rb'
Run Code Online (Sandbox Code Playgroud)

但它不使用Spring,因此非常慢.

And*_*rew 8

我找到了两种方法,取决于你的工作流程可能比另一种更适合你.假设您正在使用IDEA 14(可能与早期版本不同)和Rails 4.1+或安装了Spring.

定制跑步者

  1. 在顶部菜单Run -> Edit Configurations...;
  2. 配置选项卡:
    2.2.Ruby脚本:<Path to your bin/rails file>;
    2.3.工作目录:runner <Path to your script>;
    2.4.环境变量:<Your project dir>;
    2.5.Ruby参数:RAILS_ENV=development;
    2.6.Ruby SDK : -e '$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)'.
  3. Bundler选项卡:
    3.1.在bundle(bundle exec)的上下文中运行脚本:<Your project SDK>.

这种方法的问题在于,每次要运行不同的文件时,都必须手动将路径更改为临时文件(如果您了解解决方法,请发表评论).

外部工具

  1. 在顶部菜单<check>;
  2. IntelliJ IDEA -> Preferences;
  3. 点击Tools -> External Tools菜单底部:
    3.1.姓名:+;
    3.2.计划:Rails Runner;
    3.3.参数:$ProjectFileDir$/bin/spring;
    3.4.工作目录:rails runner $FilePath$.
  4. $ProjectFileDir$:
    4.1.搜索Keymap;
    4.2.双击并添加自定义快捷方式(Rails Runner方便且可用).

这种方法的唯一问题是你必须有自定义快捷方式才能方便.