繁体   English   中英

我什么时候需要在Rails中重启服务器?

[英]When do I need to restart server in Rails?

我注意到当我更改rails项目文件(如html.erb.css ,我不必使用rails -s命令重新启动服务器。

但我想当我想安装一个新宝石时,我必须这样做。 问题是我正在努力让jQuery工作,所以我厌倦了一直做rails -s

任何人都可以告诉我,当我修改我的应用程序时,我什么时候必须再次运行rails -s ?什么时候可以负担得起? 如果不这样做,我的意思是只需刷新网页即可查看更改。

当您需要从一开始就重新加载Rails时,需要重新启动服务器。

如果您要添加或删除gem,那么是的,您将需要重新启动服务器。

如果你改变你的ruby版本,更改你的Gemfile或从Rails的内部类改变一些东西,你需要重新启动它,否则它应该没问题。 但是如果出现意外问题,重启服务器是你应该尝试的第一件事。

另外,在旁注中,如果config.cache_classes设置为false (我认为是开发的默认设置,而不是生产版),您只会看到更新只是刷新页面。

编辑:

为了确保每个人都注意到,tadman在评论中说了一句明智的事情, 这里的一般经验法则是对app /或者/ routes之外的任何内容进行更改.rb或db /将需要重新启动。

在开发中,您需要在以下时间重启:

  • 您在Gemfile添加/删除/更新gems。
  • 您可以通过rvm对ruby环境进行其他更改。
  • 您可以更改config/下的任何文件,但会为您重新加载routes.rb
  • 您更改的任何文件require手动,而不是自动加载。

在生产中,您需要重新启动时:

  • 您可以更改任何代码或宝石。

注意如果需要,可以通过编辑相应的environment/<env>.rb文件来更改这些行为,尽管默认值是合理的。

每当安装或更新gem时,如果升级ruby,或者更改某些在引导期间运行的逻辑(如config / boot.rb或config / database.yml),通常需要重新启动服务器。 否则,即使您编辑/添加模型/控制器,通常也不会。

旁注: jquery-rails gem可以轻松地将jquery添加到项目中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM