资产管道导轨3

时间:2012-03-16 11:18:51

标签: ruby-on-rails asset-pipeline

我只是想寻求一点清晰度来更好地理解Rails资产管道。我已将样式表和javascripts放在app / assets / javascripts和app / assets / stylesheets中。现在我试图让这些视图在我的页面上呈现,但到目前为止没有任何显示..我想看看是否有人可以确认以下内容是否正确

在我的布局/应用程序中我有

 <%= stylesheet_link_tag "fullcalendar" %>
 <%= stylesheet_link_tag "application" %>
 <%= javascript_include_tag "jquery.js" %>
 <%= javascript_include_tag "jquery.rest.js" %>
 <%= javascript_include_tag "rails.js" %>
 <%= javascript_include_tag "application.js" %>

 <!-- these are needed for the calendar. -->
 <%= javascript_include_tag "jquery-ui-1.8.11.custom.min.js" %>
 <%= javascript_include_tag "fullcalendar.js" %>
 <%= javascript_include_tag "calendar.js" %>

我的index.html.erb看起来像

<html>
<head>

<link href="/stylesheets/fullcalendar.css" media="screen" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='/javascripts/jquery.js'></script>
<script type='text/javascript' src='/javascripts/fullcalendar.js'></script>
<script type='text/javascript' src='/javascripts/calendar.js'></script>
<script type='text/javascript' src='/javascripts/jquery-ui-1.8.9.custom.min.js'></script>
<script type='text/javascript' src='/javascripts/jquery.rest.js'></script>

我错过了什么或只是一个真正的新手(所有建设性的批评欢迎)

2 个答案:

答案 0 :(得分:4)

在您的布局/应用程序中,您只需要:

<%= javascript_include_tag "application" %>
<%= stylesheet_link_tag "application", media: "all" %>

并在app / assets / stylesheets / application.css中 你只需要:

   *=require_self
   *=require_tree .

和app / assets / javascripts / application.js

//= require jquery
//= require jquery_ujs
//= require_tree .

并且需要包含所有文件

如果你包含js文件,你会在制作中遇到一些问题,为了避免它,你应该在config / production.rb,config中添加 ex:“fullcalendar.js”这样的文件。 assets.precompile + =%W(fullcalendar.js),然后运行rake asset:precompile

答案 1 :(得分:1)

您可以在Ryan Bates视频中看到快速概述:#279 Understanding the Asset Pipeline。 有关详细信息,请转到RailsGuide: Asset Pipeline

两者都帮助了我很多。