Rails 中的三种模式有什么区别:-
In development mode, Rails reloads models each time a browser sends in a request,
so the model will always reflect the current database schema.
EDIT我问的是其他差异。我提到过一个,我正在寻找其他差异列表......!!
这取决于性能和稳定性。在生产模式下,模型会缓存在内存中,这意味着一旦读取一次,就无需再次读取文件,带来明显的速度优势。这意味着,如果您要更改定义模型的 ruby 文件(例如 app/models/page.rb),则在下次重新加载之前不会采用此更改。
默认情况下,以下行位于 config/environments/Production.rb 中:
config.cache_classes = true
假设是,当您处于生产模式时,除了通过发布或部署之外,您不会更改代码。如果要清除缓存,需要重新启动应用程序。
开发环境每次收到请求时都会重新加载您的模型。这是由 config/environments/development.rb 中的以下默认行控制的:
config.cache_classes = false
就“第三”模式而言,我认为您指的是测试模式。默认情况下,这也会缓存模型(请参阅 config/environments/test.rb),同样假设您不会在测试运行中途更改代码库。
顺便说一句,它不仅仅是模型 - 我非常确定此设置包含“app”目录中找到的任何类。此外,您会发现,即使在开发模式下,如果不重新启动应用程序,也无法更改位于应用程序其他位置的类(例如“lib”)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)