[FIX] qweb: allow t-call on arbitrary html nodes

This is a rarely (if ever) used feature, but according to our qweb
reference implementation, it is possible to use the
t-call directive on an arbitrary html tag, like this:

<div t-call="my.template"/>

It is then interpreted as:

<div><t t-call="my.template"/></div>

So, with this commit, we make sure that the owl qweb implementation
matches that behaviour.

closes #706
This commit is contained in:
Géry Debongnie
2020-09-17 16:06:54 +02:00
committed by aab-odoo
parent b2db7f21ed
commit e032314739
5 changed files with 88 additions and 7 deletions
-3
View File
@@ -223,9 +223,6 @@ QWeb.addDirective({
// ------------------------------------------------
ctx.rootContext.shouldDefineScope = true;
ctx.rootContext.shouldDefineUtils = true;
if (node.nodeName !== "t") {
throw new Error("Invalid tag for t-call directive (should be 't')");
}
const subTemplate = node.getAttribute("t-call")!;
const nodeTemplate = qweb.templates[subTemplate];
if (!nodeTemplate) {