新手问题 在 rails5.0 的 development 开发模式下,做什么修改需要重启 rails s 服务?

gaolei14 · March 25, 2017 · Last by kevinyu replied at June 18, 2019 · 2682 hits

在 rails5.0 的 development 开发模式下,做什么修改需要重启 rails s 服务?

app 目录下任何修改都不用,其他目录都需要,config 目录,除了 routes.rb 以外的任何文件。(假设用默认设置)

Reply to ericguo

试了一下 rails5.0 app 目录下修改 controllers 的内容,如果不重启 rails s 服务。修改的代码不会被加载。

4.2 以下的 rails 版本 app 目录下修改 controllers 的内容,不需要重启 rails s

所以感觉有点迷惑,如果这个方式下 5.0 的开发效率略差,修改一次代码,就需要重启 rails server 服务,rails 5.0 提供了 rails restart 的命令,但是感觉还是差些。

Reply to gaolei14

5.0 行为和 4.2 一样,可能情况:

  1. 用了虚拟机,spring 拿不到文件修改事件。
  2. spring 挂死。
Reply to Rei

用了 vagrant 启动了虚拟机,在虚拟机中进行的使用。那这种事情下,如果解决?

Reply to Rei

进行了测试,用 vagrant 启动了虚拟机。 1、应用程序编辑使用的 mac 下 sublime,编辑虚拟机中的代码,rails5(应该是 spring)不能获得文件的修改事件。 2、使用 ssh 进入虚拟机,用 vim 修改 app/controller 文件,rails5(应该是 spring)能获得文件的修改事件。

如果想在 mac 下使用 sublime 编辑代码,如何让 rails5(spring)能获得文件修改事件?

Reply to gaolei14

我没找到解决办法,不用虚拟机了。

Reply to Rei

嗯,那看来不能愉快的使用 vagrant 了搭建统一的开发环境了

再找找解决方案

终于找到解决方案。

安装 vagrant 插件可以解决这个问题 @Rei


vagrant plugin install vagrant-vbguest
vagrant plugin install vagrant-librarian-chef-nochef

今天遇到了同样的问题 感谢

You need to Sign in before reply, if you don't have an account, please Sign up first.