使用ezpublish 2014.11我想使用它来渲染一个位置:
{{ render( controller("ez_content:viewLocation", { "locationId": location.id, "viewType":"myview" } )) }}
每个内容使用相同的模板。
换句话说,我不想在ezpublish.yml
中定义匹配规则:
myview:
myview:
template: AirplAirplEzBundle::myview.html.twig
match:
Identifier\ContentType: [my_type]
如果可能的话,我根本不需要任何配置。
是否存在某种默认模板视图位置,我可以在其中放置我的树枝模板,以便ez_content:viewLocation
仅基于viewType可以访问它们?
如果没有,是否有任何方法可以在没有匹配规则的情况下进行模板配置?
答案 0 :(得分:1)
如果您希望使用match
,则需要匹配的配置,但您可以将myview:
myview:
template: AirplAirplEzBundle::myview.html.twig
match: ~
部分留空,以确保规则始终适用:
myview
请确保此规则是 var testData = [
{ Area: "Area 1", Shop: "Shop 1", Val: 5 },
{ Area: "Area 1", Shop: "Shop 2", Val: 20 },
{ Area: "Area 2", Shop: "Shop 1", Val: 25 },
{ Area: "Area 2", Shop: "Shop 2", Val: 40 }
];
res = alasql( 'SELECT CASE WHEN \
GROUPING(Area) = 1 THEN "ALL" ELSE MAX(Area) END AS Area, \
CASE WHEN GROUPING(Area) = 1 THEN "TOTAL" \
GROUPING(Shop) = 1 THEN "SUBTOTAL" ELSE MAX(Shop) END AS Shop,\
SUM(Val) AS Val \
INTO HTML("#res1",{headers:true}) FROM ? \
GROUP BY ROLLUP(Area,Shop)', [testData]);
视图类型列表中的最后一个规则,因为适用于自上而下的第一个规则适用。
答案 1 :(得分:0)
您可以覆盖" ez_content:viewLocation"映射到另一个服务。
基本上你可以覆盖ez_content-service的class-paramter,并通过你自己的新类来扩展旧类。 在新课程中,您只需要定义方法" viewLocation"并实现您可能需要的任何映射。
更简洁的方法是将所有类标识符添加到一个匹配器。 这样,如果你想在某一天获取另一个模板,你可以有更多的控制权。
希望这有帮助。