首页 > 解决方案 > Rails 5-RAILS_ENV=production rake assets:precompile 和 rake assets:precompile 之间的区别

问题描述

我是 Rails 新手,甚至是生产新手。

RAILS_ENV=production rake assets:precompile和 和有什么不一样rake assets:precompile?预编译不应该只在生产中吗?为什么rake assets:precompile什么都不生产,只RAILS_ENV=production rake assets:precompile生产一堆

I, [2019-01-07T20:45:55.090716 #14756]  INFO -- : Writing E:/abcd/public/assets/home-0b9b55ca1e7f939be5941a6b148eb88810cf0357d3e6a5c03702654c2a9e2886.css

标签: ruby-on-railsruby-on-rails-5

解决方案


在 Rails 中,每个环境都只是一个配置文件。您可以在不同的模式下启动您的应用程序,这些模式称为环境,因为它们以不同的方式影响应用程序的行为。归根结底,它们只是配置文件。

rails 默认环境是 1) 开发 2) 生产 3) 测试

但你可以拥有尽可能多的。

此链接将帮助您更好地了解环境https://guides.rubyonrails.org/configuring.html

1)RAILS_ENV=production rake assets:precompile您在本地计算机上运行此程序,但如果默认环境是您想要模拟生产的开发环境。RAILS_ENV=production将读取在 ** config/environments/production.rb ** 中找到的选项,如果您将其保留为默认值,它将使用系统环境

在 Heroku 上,如果您转到设置 > 显示配置变量,您将看到它设置为生产,但您可以更改它。与您可以在本地主机上更改它的方式相同。

我希望这会有所帮助。


推荐阅读