【发布时间】:2016-11-11 10:12:59
【问题描述】:
我目前正在学习处理 symfony 3 并遵循 this 教程
但是当我在 Symphony 中编码错误时,页面的正确显示出现了一些错误。
我错过了什么?路径有问题吗?
这是日志文件中的一些内容:
Stack Trace
in vendor\twig\twig\lib\Twig\Parser.php at line 400 +
at Twig_Parser ->filterBodyNodes (object(Twig_Node_Text))
in vendor\twig\twig\lib\Twig\Parser.php at line 413 +
at Twig_Parser ->filterBodyNodes (object(Twig_Node))
in vendor\twig\twig\lib\Twig\Parser.php at line 113 +
at Twig_Parser ->parse (object(Twig_TokenStream))
in var\cache\dev\classes.php at line 3807 +
at Twig_Environment ->parse (object(Twig_TokenStream))
in var\cache\dev\classes.php at line 3835 +
at Twig_Environment ->compileSource (object(Twig_Source))
in var\cache\dev\classes.php at line 3686 +
at Twig_Environment ->loadTemplate ('genus/show.html.twig')
in vendor\symfony\symfony\src\Symfony\Bridge\Twig\TwigEngine.php at line 126 +
at TwigEngine ->load ('genus/show.html.twig')
in vendor\symfony\symfony\src\Symfony\Bridge\Twig\TwigEngine.php at line 50 +
at TwigEngine ->render ('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')))
in vendor\symfony\symfony\src\Symfony\Bundle\TwigBundle\TwigEngine.php at line 50 +
at TwigEngine ->render ('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')))
in vendor\symfony\symfony\src\Symfony\Bundle\TwigBundle\TwigEngine.php at line 75 +
at TwigEngine ->renderResponse ('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')), null)
in vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Controller\Controller.php at line 212 +
at Controller ->render ('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')))
in src\AppBundle\Controller\GenusController.php at line 31 +
at GenusController ->showAction ('octopus')
at call_user_func_array (array(object(GenusController), 'showAction'), array('octopus'))
in vendor\symfony\symfony\src\Symfony\Component\HttpKernel\HttpKernel.php at line 153 +
at HttpKernel ->handleRaw (object(Request), '1')
in vendor\symfony\symfony\src\Symfony\Component\HttpKernel\HttpKernel.php at line 68 +
at HttpKernel ->handle (object(Request), '1', true)
in vendor\symfony\symfony\src\Symfony\Component\HttpKernel\Kernel.php at line 169 +
at Kernel ->handle (object(Request))
in web\app_dev.php at line 28 +
at require ('C:\xampp\htdocs\symphony\enc_file_service\web\app_dev.php')
in vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Resources\config\router_dev.php at line 40 +
Logs -
1 error
INFO - Matched route "{route}".
INFO - Populated the TokenStorage with an anonymous Token.
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
CRITICAL - Uncaught PHP Exception Twig_Error_Syntax: "A template that extends another one cannot include contents outside Twig blocks. Did you forget to put the contents inside a {% block %} tag in "genus/show.html.twig" at line 2?" at C:\xampp\htdocs\symphony\enc_file_service\vendor\twig\twig\lib\Twig\Parser.php line 400
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
DEBUG - Notified event "{event}" to listener "{listener}".
Stack Trace (Plain Text) -
[1] Twig_Error_Syntax: A template that extends another one cannot include contents outside Twig blocks. Did you forget to put the contents inside a {% block %} tag in "genus/show.html.twig" at line 2?
at n/a
in C:\xampp\htdocs\symphony\enc_file_service\vendor\twig\twig\lib\Twig\Parser.php line 400
at Twig_Parser->filterBodyNodes(object(Twig_Node_Text))
in C:\xampp\htdocs\symphony\enc_file_service\vendor\twig\twig\lib\Twig\Parser.php line 413
at Twig_Parser->filterBodyNodes(object(Twig_Node))
in C:\xampp\htdocs\symphony\enc_file_service\vendor\twig\twig\lib\Twig\Parser.php line 113
at Twig_Parser->parse(object(Twig_TokenStream))
in C:\xampp\htdocs\symphony\enc_file_service\var\cache\dev\classes.php line 3807
at Twig_Environment->parse(object(Twig_TokenStream))
in C:\xampp\htdocs\symphony\enc_file_service\var\cache\dev\classes.php line 3835
at Twig_Environment->compileSource(object(Twig_Source))
in C:\xampp\htdocs\symphony\enc_file_service\var\cache\dev\classes.php line 3686
at Twig_Environment->loadTemplate('genus/show.html.twig')
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Bridge\Twig\TwigEngine.php line 126
at Symfony\Bridge\Twig\TwigEngine->load('genus/show.html.twig')
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Bridge\Twig\TwigEngine.php line 50
at Symfony\Bridge\Twig\TwigEngine->render('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')))
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Bundle\TwigBundle\TwigEngine.php line 50
at Symfony\Bundle\TwigBundle\TwigEngine->render('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')))
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Bundle\TwigBundle\TwigEngine.php line 75
at Symfony\Bundle\TwigBundle\TwigEngine->renderResponse('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')), null)
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Controller\Controller.php line 212
at Symfony\Bundle\FrameworkBundle\Controller\Controller->render('genus/show.html.twig', array('name' => 'octopus', 'notes' => array('Hello dude it is amazing to use twig', 'as a html css template', 'as a html css template')))
in C:\xampp\htdocs\symphony\enc_file_service\src\AppBundle\Controller\GenusController.php line 31
at AppBundle\Controller\GenusController->showAction('octopus')
in line
at call_user_func_array(array(object(GenusController), 'showAction'), array('octopus'))
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Component\HttpKernel\HttpKernel.php line 153
at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), '1')
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Component\HttpKernel\HttpKernel.php line 68
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), '1', true)
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Component\HttpKernel\Kernel.php line 169
at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
in C:\xampp\htdocs\symphony\enc_file_service\web\app_dev.php line 28
at require('C:\xampp\htdocs\symphony\enc_file_service\web\app_dev.php')
in C:\xampp\htdocs\symphony\enc_file_service\vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Resources\config\router_dev.php line 40
编辑:
{% extends 'base.html.twig' %}
{% block title %}Genus {{ name }}{% endblock %}
{% block body %}
<h2 class="genus-name">{{ name }}</h2>
<div class="sea-creature-container">
<div class="genus-photo"></div>
<div class="genus-details">
<dl class="genus-details-list">
<dt>Subfamily:</dt>
<dd>Octopodinae</dd>
<dt>Known Species:</dt>
<dd>289</dd>
<dt>Fun Fact:</dt>
<dd>{{ funFact|raw }}</dd>
</dl>
</div>
</div>
<div id="js-notes-wrapper"></div>
<section id="cd-timeline">
</section>
{% endblock %}
{% block javascripts %}
{{ parent() }}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.3/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.3/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23/browser.min.js"></script>
<script type="text/babel" src="{{ asset('js/notes.react.js') }}"></script>
<script type="text/babel">
var notesUrl = '{{ path('genus_show_notes', {'genusName': name}) }}';
ReactDOM.render(
<NoteSection url={notesUrl} />,
document.getElementById('js-notes-wrapper')
);
</script>
{% endblock %}
【问题讨论】:
-
您能否分享您的
show.html.twig文件的代码。看来你忘了添加{% block %}声明。 -
@Sameer 现已上线
-
但我对此问题没有任何疑问。问题就在那里,因为我这样做了......看看错误页面做了什么。但后来我的 symfony 错误页面显示不正确。那里有什么?
-
这可能是缓存问题?您是否在终端中尝试过
$ php bin/console cache:clear,然后刷新? -
没有没有帮助...
标签: php logging error-handling xampp symfony