资产管道 Rails 3

4

我只是想更好地理解Rails资产管道,希望你能提供一些帮助。我已经将我的样式表和JavaScript文件放在app/assets/javascripts和app/assets/stylesheets中。现在我正在尝试让这些视图在我的页面上呈现,但到目前为止什么都没有显示... 我想看看是否有人可以确认以下内容是否正确

在我的layouts/application中,我有:

 <%= 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个回答

4
在您的layouts/application中,您只需要这样做:
<%= 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文件中,例如:"fullcalendar.js",然后运行rake asset:precompile命令进行预编译。


谢谢,那我离开了吗?<%= javascript_include_tag "application.js" %>在layouts/application中保留吗?我如何在我的索引页面调用JavaScript? - Richlewis
在app/assets/javascripts/application.js中的"//= require_tree ."将处理这些情况。 - Said Kaldybaev
我想在你的答案旁边投一票,但我需要达到15个声望才能这样做。 - Richlewis
另一个问题,抱歉,如果我在index.html.erb中,页面如何知道要使用哪些脚本?即要使用哪些JavaScript? - Richlewis
它使用application.js和所有在其中需要的脚本。 - Sandro L
显示剩余2条评论

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接