Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
bug #2415 Add error message when calling parent() in a block that doe…
…sn't exist (pierredup) This PR was squashed before being merged into the 2.x branch (closes #2415). Discussion ---------- Add error message when calling parent() in a block that doesn't exist Related: #2309 When calling `parent()` in a block that isn't defined in the parent template, you get an error message that states `Block "%s" on template "%s" does not exist`, even if the block is wrapped in an `is defined` check, which is confusing and makes debugging hard. This fix adds a better error message indicating that you should not call `parent()` when the parent block is not defined. Before: ![screen shot 2017-03-08 at 08 08 38](https://cloud.githubusercontent.com/assets/144858/23693410/0e476242-03dd-11e7-9621-4442bdc6bf05.png) After: ![screen shot 2017-03-08 at 08 56 18](https://cloud.githubusercontent.com/assets/144858/23693424/234d9c2e-03dd-11e7-8d07-4e277d80f7e4.png) Commits ------- 4587f67 Add error message when calling parent() in a block that doesn't exist
- Loading branch information
Showing
4 changed files
with
25 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
11 changes: 11 additions & 0 deletions
11
test/Twig/Tests/Fixtures/functions/block_without_parent.test
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
--TEST-- | ||
"block" calling parent() with no definition in parent template | ||
--TEMPLATE-- | ||
{% extends "parent.twig" %} | ||
{% block label %}{{ parent() }}{% endblock %} | ||
--TEMPLATE(parent.twig)-- | ||
{{ block('label') }} | ||
--DATA-- | ||
return array() | ||
--EXCEPTION-- | ||
Twig_Error_Runtime: Block "label" should not call parent() in "index.twig" as the block does not exist in the parent template "parent.twig" in "index.twig" at line 3. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters