gpt4 book ai didi

ruby-on-rails-3.1 - Rails 3.1 Assets 在生产中没有指纹

转载 作者:行者123 更新时间:2023-12-04 04:31:56 25 4
gpt4 key购买 nike

刚开始适应Rails 3.1,我开始编写coffeescript和sass,一切在开发中都可以正常工作。在生产环境中运行服务器时,只会得到:

  <link href="/stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
<script src="/javascripts/application.js" type="text/javascript"></script>

在页面的源代码中,没有生成哈希码,并且两个 Assets 都有路由错误:
Routing Error
No route matches [GET] "/stylesheets/application.css"

这是什么原因造成的?我忘了做某事吗?

环境/production.rb中的设置:
# Settings specified here will take precedence over those in config/application.rb

# Code is not reloaded between requests
config.cache_classes = true

# Full error reports are disabled and caching is turned on
config.consider_all_requests_local = false
config.action_controller.perform_caching = true

# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false

# Compress JavaScripts and CSS
config.assets.compress = true



# Don't fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = false

# Generate digests for assets URLs
config.assets.digest = true

config.active_support.deprecation = :notify

非常感谢你。

添加更多信息:

在layouts/application.html.erb中,我使用以下内容来包含 Assets :
  <%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>

而且我试过了 bundle exec rake assets:precompile,它在不输出任何内容的情况下运行,然后运行 rails s -e production,问题仍然存在。

而且我还尝试设置 config.assets.compile = true,然后运行 rails s -e production,问题仍然存在。

请帮忙。

更多信息。
我已经看到,已编译的js和css是在public/assets文件夹中生成的,但是在生产环境中,文件中没有哈希码。

帮助。

解决方案:
再次检查我的项目,发现根本原因是我在编辑application.rb以获得mongodb的支持时。我不小心评论了
require "sprockets/railtie"

取消注释,然后一切都很好。

将此留给其他人来提醒我的菜鸟错误。

理查德,非常感谢。您的答案不是最终答案,但它可以提供很大帮助,真的值得您投票。

最佳答案

检查是否在application.rb中打开了管道:

config.assets.enabled = true

您是否使用正确的帮助程序方法来编写标签?辅助方法的路径中不应包含/styleheets和/javascript。像这样(在erb内部):

javascript_include_tag“应用程序”
stylesheet_link_tag“应用程序”

由于将compile设置为false,因此在部署过程中还需要运行precompile任务来创建文件。

asset pipeline guide显示了如何使用capistrano进行设置。

关于ruby-on-rails-3.1 - Rails 3.1 Assets 在生产中没有指纹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7648349/

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