我在Passenger/Apache 上使用Sinatra 和erb。每次我对 erb 文件进行编辑时,我都必须重新启动 Apache 并在浏览器中刷新。
有什么方法可以编辑文件,sinatra 可以立即更新它吗?我的意思是只需单击浏览器中的刷新按钮就可以查看更新吗?
结论:
如果你在 sinatra 上开发,你可以使用shotgun
or SinatraLoader
。
如果您使用Passenger,您可以创建一个空文件:tmp\always_restart.txt
是的,您可以使用Sinatra::Reloader。
Sinatra::重新加载器
重新加载修改文件的扩展。在开发过程中很有用,因为它会自动要求定义路由、过滤器、错误处理程序和内联模板的文件,每个传入请求,但前提是它们已经更新。
您可以为此使用 Shotgun:https ://github.com/rtomayko/shotgun
霰弹枪
这是 Rack 附带的 rackup 命令的自动重新加载版本。它可以用作 Web 框架或不支持应用程序重新加载的环境中提供的复杂重新加载逻辑的替代方案。