2014-04-29 69 views
1

我對樹枝模板有些麻煩。Symfony異常頁面上的樹枝模板不呈現頭部

我已經通過在應用程序/ TwigBundle /上覆制它來重載TwigBundle。 現在我想自定義我的404頁面爲例。我不知道爲什麼,但我從視圖中看到所有HTML代碼,佈局良好,但主佈局的頭部是空的,所以這不會加載任何CSS文件或JS !.

在所有其他頁面中,所有工作都會發現,此問題僅在異常視圖中出現!

我的架構:

error404.html.twig(延伸) - >佈局公共user.html.twig(過載內容塊) - > layout.html.twig(包括) - > head.html .twig

查看404:

{# 
APP > TwigBundle > Exceptions > error404.html 
#} 

{% extends "::layout-public-v2.html.twig" %} 

{% block title %}Erreur 404 (page non trouvée) - {{ parent() }}{% endblock %} 
//blablablabla 

佈局公開:

{# 
APP > layout-public-v2.html 
variables : view_content 
#} 

{% block topBar %} 
{% include '::topbar/topbar-public-v2.html.twig' %} 
{% endblock %} 

<section id="content"> 
{% block body %} 

{{ view_content|raw }} 
{% endblock %} 
</section> 

佈局:

{# 
    APP > layout.html 
#} 

{% include '::header/header-v2.html.twig' %} 

<body class=""> 
{% block topBar %} 
{% endblock %} 

{% if app.user %} 
    {% include '::layout-user-v2.html.twig' with {'view_content': block('content')} %} 
{% else %} 
    {% include '::layout-public-v2.html.twig' with {'view_content': block('content')} %} 
{% endif %} 

{% include '::footer/footer-js-v2.html.twig' %} 

</body> 

頭:

{# 
    APP > header/header-v2.html 
#} 

<!DOCTYPE html> 
<html lang="fr" class="app"> 
<head> 
    {% block head %} 
    <meta charset="utf-8" /> 
    <title>JobaPic</title> 
    <meta name="description" content="app, web app, responsive, admin dashboard, admin, flat, flat ui, ui kit, off screen nav" /> 
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" /> 
    {% include '::header/header-css-v2.html.twig' %} 
    <!--[if lt IE 9]> 
     <script src="{{ asset('bundles/general/js/ie/html5shiv.js') }}"></script> 
     <script src="{{ asset('bundles/general/js/ie/respond.min.js') }}"></script> 
     <script src="{{ asset('bundles/general/js/ie/excanvas.js') }}"></script> 
    <![endif]--> 
    {% endblock %} 
</head> 

頭-CSS

{# 
    APP > header/header-css-v2.html 
#} 

<link rel="stylesheet" href="{{ asset('bundles/general/css/bootstrap.css') }}" type="text/css" /> 
<link rel="stylesheet" href="{{ asset('bundles/general/css/animate.css') }}" type="text/css" /> 
<link rel="stylesheet" href="{{ asset('bundles/general/css/font-awesome.min.css') }}" type="text/css" /> 
<link rel="stylesheet" href="{{ asset('bundles/general/css/font.css') }}" type="text/css" /> 
<link rel="stylesheet" href="{{ asset('bundles/general/js/calendar/bootstrap_calendar.css') }}") type="text/css" /> 
<link rel="stylesheet" href="{{ asset('bundles/general/css/app.css') }}" type="text/css" /> 

由於

+0

你能否提供樹枝源代碼(對於你可能使用的資產,至少)?你創建異常分支文件的確切路徑是什麼? – Javad

+0

我編輯了並給你樹枝模板源碼。我的404頁面的確切路徑是:app/Ressources/TwigBundle/views/Exception/error404.html.twig –

+0

如果您看到輸出的視圖源,您是否看到包含的頭文件css/js?如果是,請檢查路徑是否正確。正如你知道擴展或包含文件的路徑(例如':: blahblah.html.twig')應該是* app/Resources/views/blahblah.html.twig * – Javad

回答

1

我想你應該首先擴展layout.html其中包括public-layout.html裏面;但你首先要擴展public-layout.html
這個問題似乎是你延長的方式,因爲它似乎被空塊覆蓋{%block topbar%}