gpt4 book ai didi

ruby-on-rails - Rails 三种开发模式的区别

转载 作者:行者123 更新时间:2023-12-03 07:07:45 24 4
gpt4 key购买 nike

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.

编辑我问的是其他差异。我提到过我正在寻找其他差异列表......!!

最佳答案

这取决于性能和稳定性。在生产模式下,模型会缓存在内存中,这意味着一旦读取一次,就无需再次读取文件,带来明显的速度优势。这意味着,如果您要更改定义模型的 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”)。

关于ruby-on-rails - Rails 三种开发模式的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2757264/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com