- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 RoR 新手(但经验丰富的开发人员),我一直很喜欢它……但我在 Assets 管道方面遇到了障碍!我有一个遗留应用程序,我正在对其进行修改以使用 Assets 管道。我在 SO 和其他网站上阅读了一篇又一篇文章,但我就是无法正常工作。以下是详细信息:
ruby 版本:2.0.0-p353
Rails 版本:3.1.12
app/assets/javascripts 目录的内容:
application.js
bootstrap.js
event_calendar.js
jquery-ui-timepicker-addon.js
jquery-ui.js
jquery.js
jquery.prettyPhoto.js
jrails.js
mce_editor.js
rails.js
/tiny_mce
文件application.js的内容:
//= require bootstrap
//= require event_calendar
//= require jquery
//= require jquery.prettyPhoto
//= require jquery-ui
//= require jquery-ui-timepicker-addon
//= require jrails
//= require mce_editor
//= require rails
//= require_tree ./tiny_mce
app/assets/stylesheets 目录的内容:
application.css
/blueprint
bootstrap-responsive.css
bootstrap.css
common.css
contributed.css
event_calendar.css
jquery-custom.css
jquery-ui-timepicker-addon.css
marketing.css
prettyPhoto.css
registration.css
sysadministration.css
template.css
/ui-darkness
application.css 文件的内容:
/*
*= require bootstrap
*= require bootstrap-responsive
*= require common
*= require contributed
*= require event_calendar
*= require jquery-custom
*= require jquery-ui-timepicker-addon
*= require marketing
*= require prettyPhoto
*= require registration
*= require sysadministration
*= require template
*= require_tree ./blueprint
*= require_tree ./ui-darkness
*/
在config/application.rb中设置:
config.assets.enabled = true
app/views/layouts/application.html.erb 中的助手
<%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>
config/environments/development.rb 中的设置:
config.assets.compress = false
config.assets.compile = true
config.assets.debug = true
文件夹/public/assets的内容:
(empty)
当我浏览到 localhost:3000/assets/application.js
时,我只是得到返回的 application.js 文件的内容。同样适用于 application.css。但是,application.js 中有一个明显的尾随分号:
//= require bootstrap
//= require event_calendar
//= require jquery
//= require jquery.prettyPhoto
//= require jquery-ui
//= require jquery-ui-timepicker-addon
//= require jrails
//= require mce_editor
//= require rails
//= require_tree ./tiny_mce
;
我曾尝试追查尾随的分号,但没有成功。我已经更改了 require 语句的顺序,认为我可以减少 .js 代码中的任何语法错误,但这项努力没有成功。
呈现我的页面时,它没有任何样式或 js(正如预期的那样,因为 Assets 管道不工作)。
我也曾尝试在 application.css 和 application.js 中使用 require_tree .
指令,而不是显式列出每个文件,但这也不起作用。
最后,我的服务器控制台中没有出现任何错误。看起来 Rails 认为 Assets 被正确提供:
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2014-08-02 15:31:02 -0400
Served asset /application.css - 304 Not Modified (0ms)
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2014-08-02 15:31:02 -0400
Served asset /application.js - 304 Not Modified (0ms)
根据我提供的信息,我的配置是否有明显的遗漏?任何人有一些建议让这个工作??
谢谢!
最佳答案
我决定升级到 Rails 3.2.18,这解决了这个问题(我遵循了 RailsGuides #318“升级到 Rails 3.2”)。现在我的 js 和 css 被传送到浏览器:
并且服务器控制台显示正在单独交付的 Assets (开发模式):
Started GET "/assets/bootstrap.css?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /bootstrap.css - 304 Not Modified (0ms)
Started GET "/assets/jquery-custom.css?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /jquery-custom.css - 304 Not Modified (0ms)
Started GET "/assets/contributed.css?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /contributed.css - 304 Not Modified (0ms)
[deleted for brevity]
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /application.css - 304 Not Modified (0ms)
Started GET "/assets/jquery.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /jquery.js - 304 Not Modified (0ms)
Started GET "/assets/jquery.prettyPhoto.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /jquery.prettyPhoto.js - 304 Not Modified (0ms)
Started GET "/assets/jquery-ui.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /jquery-ui.js - 304 Not Modified (0ms)
Started GET "/assets/jquery-ui-timepicker-addon.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /jquery-ui-timepicker-addon.js - 304 Not Modified (0ms)
Started GET "/assets/bootstrap.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /bootstrap.js - 304 Not Modified (0ms)
Started GET "/assets/event_calendar.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /event_calendar.js - 304 Not Modified (0ms)
Started GET "/assets/mce_editor.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /mce_editor.js - 304 Not Modified (0ms)
Started GET "/assets/jrails.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /jrails.js - 304 Not Modified (0ms)
Started GET "/assets/rails.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /rails.js - 304 Not Modified (0ms)
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2014-08-04 06:07:20 -0400
Served asset /application.js - 304 Not Modified (0ms)
关于ruby-on-rails - Asset Pipeline 不提供 Assets ,但没有错误。这个配置看起来正确吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25098706/
#include #include #include using namespace std::chrono; int main(int arc, char* argv[]) { con
我是 opencv 的新手。当我将 sRGB png 提供给它时,我发现以下代码交换了红色和蓝色 channel 。我应该责怪哪个函数,imread 还是 fromarray? 最佳答案 是的,O
我正在使用以下代码,它缩小了每一行,并且由于某种原因整个用户界面也丢失了。我该如何解决?
它是关于以下设置的:Linux 机器、bash、adb、带有 Busybox 的嵌入式 Linux 目标系统。对于目标系统,以下适用: adb shell echo $SHELL /bin/sh ad
当我在 Android Studio 上创建一个空 fragment 时,它会生成以下代码: /** * A simple {@link Fragment} subclass. * Activit
我正在尝试从 Meteor 应用程序的服务器端发布用户的 Facebook 提要: result = Meteor.http.call 'POST', "https://graph.faceb
目前我有两个不同的查询,它们返回完全相同的结果,但是,更改从中过滤结果的参数会使它们以非常不同的方式运行。 搜索 cartography 时的结果 查询 #1: 22 行/~860 毫秒; SELEC
我已经创建了结构: typedef struct { short s; int i; struct Ss { short s; }; } S;
我想在 Java 中打印反斜杠 t。但每当我尝试时,它实际上都将它作为\t 运算符。双反斜杠不起作用。我该怎么做。 最佳答案 例如通过添加另一个反斜杠来转义反斜杠 System.out.println
我想弄清楚为什么 UIActivityViewController 发送一个稍微转换过的字符串来分享给邮件和微信。 这是我的代码: let activityViewController = UIAct
创建标准 SQLite 游标后,我将使用以下方法遍历条目: while (cursor.moveToNext()) { } 所有行都被正确处理。我读过的所有文档都表明您需要发出 moveToFirst
我正在尝试创建一个基本论坛,但在 SQL 中仅打印一行时遇到问题。这是我的 PHP: {$title}"; } } else { print "failed to reach post
我的新 div 元素 ( ) 似乎隐藏在图像后面。我键入的任何内容都显示在图像后面。我想在背景图片之后继续工作。 这是我的代码: DISPLAY
UPD。一行代码解决了问题:.lean() axplanation here 我在 Model.find(...blablabla : [ {"_id":"578763de6e8e0542195ef4
我在 Ubuntu 16.04 中安装了 Tomcat 8.0.45。我使用 let's encrypt 生成的证书启用了 HTTPS 连接器。它就像一个魅力。但是今天Tomcat无法启动HTTPS连
今天,我在一台全新安装了 Windows 7 Ultimate 64 位的新笔记本电脑上安装了 Visual Studio 2010 Professional。我非常习惯于 Visual Studio
根据 Oracle,我应该能够将 .intValue() 和 .compareTo() 之类的方法应用于 double ,但是当我编写 dbl.toString( ) 例如,在 NetBeans 中,
正在为应用程序开发一些拖放功能,虽然可以使用“重影图像”来完成很多事情,将毒品从一个地方转移到另一个地方,但它们看起来总是有点“褪色” - 因此得名鬼影。是否有可能使这些具有与原始颜色相同的深度?谢谢
我是这方面的新手,很抱歉犯了一些愚蠢的错误。快乐学习。每当我使用 URL : localhost:3000/posts/whatever 时,我都会收到无法获取错误。在你问之前,是的,那是在我将内容放
背景 这自然是合法的: let closure: (Int, Int) -> () = { print($0 + $1) } closure(1, 2) // 3 鉴于,自进化提案实现以来 SE-01
我是一名优秀的程序员,十分优秀!