2012-02-23 6 views
0

Я использую Rails 3.1 с конвейером активов. Однако у меня очень странная проблема.Проблема с заказом объекта-объекта

Мой application.html.haml является:

!!! 5 
%html{:xmlns => 'http://www.w3.org/1999/xhtml'} 
    %head 
     = stylesheet_link_tag 'bootstrap', 'application' 
     = yield :css 
     %title BizPlug 
     %meta{:content => 'text/html; charset=utf-8', 'http-equiv' => 'Content-Type'} 
     = csrf_meta_tags 
     = javascript_include_tag 'application' 
     = yield :js 

На мой взгляд, я пытаюсь использовать content_for для динамической загрузки JS файл, который выглядит следующим образом:

- content_for :css do 
    = javascript_include_tag 'jquery.fancybox' 
- content_for :js do 
    = javascript_include_tag 'jquery.fancybox' 

.edit-panel 
    %p.text_actions 
     = link_to "Publish", publish_policy_draft_path(@policy_draft), :disable_with => 'Processing...', :method => 'PUT', :class => "primary btn" 
     = link_to "Delete", policy_draft_path, :method => 'Delete', :confirm => 'Are you sure', :class => 'btn danger' 
     = link_to "Close", policy_drafts_path, :class => 'btn' 

Однако, когда я проверить источник код из браузера, он дает мне

<link href="/assets/bootstrap.css?body=1" media="screen" rel="stylesheet" type="text/css" /> 
<link href="/assets/compositions.css?body=1" media="screen" rel="stylesheet" type="text/css" /> 
<link href="/assets/base.css?body=1" media="screen" rel="stylesheet" type="text/css" /> 
<link href="/assets/simple.css?body=1" media="screen" rel="stylesheet" type="text/css" /> 
<script src="/assets/jquery.fancybox?body=1" type="text/javascript"></script> 

    <title>BizPlug</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" > 
    <script src="/assets/jquery.min.js?body=1" type="text/javascript"></script> 

Я задаюсь вопросом, почему jquery.fancybox.js будет выше O f application.js?

ответ

1

Ну, если вы скопировали и вставили правильно, то у вас есть тег JavaScript include, который входит в ваш блок content_for: css. Вот почему материал fancybox требуется до application.js.

Смежные вопросы