要做一个门户的后台管理系统,现在使用的是beetl,我想前台显示的时候可以根据选择调用不同的模板,比如列表页面有3个模板,我选择的a.html 我渲染的时候用a.html,选择b模板的时候用b.html这个该怎么做?即@ok返回的不是固定地址,根据参数来的!
@GetMapping("/${system.site.prefix}/{siteId}/{categoryId}")
public String category(@PathVariable("siteId") Integer siteId,
@PathVariable("categoryId") Long categoryId,
Model model){
log.debug("栏目");
TCmsSite site = siteService.findById(siteId);
if(CmsUtil.isNullOrEmpty(site))
throw new CmsException(CmsConst.SITE_NOT_FOUND);
TCmsCategory category = categoryService.findById(categoryId);
if(CmsUtil.isNullOrEmpty(category))
throw new CmsException(CmsConst.CATEGORY_NOT_FOUND);
PageInfo page = contentService.page(1,siteId,category.getCategoryId());
model.addAttribute("title",category.getCategoryName());
model.addAttribute("keyword",site.getKeyword());
model.addAttribute("description",site.getDescription());
model.addAttribute("site",site);
model.addAttribute("category",category);
model.addAttribute("page",page);
if(StrUtil.isBlank(site.getTemplate()))
return view(category.getIndexTpl());
String viewName = view((ControllerUtil.isMobile()&&site.getIsMobile())?site.getMobileTpl():site.getTemplate(),category.getIndexTpl());
System.out.println(viewName);
return view((ControllerUtil.isMobile()&&site.getIsMobile())?site.getMobileTpl():site.getTemplate(),category.getIndexTpl());
}
private String view(String theme,String viewName){
return "www/"+theme.trim()+"/"+viewName.trim();
}
```
类似于这种代码 我不不知道他是怎么做到找不同模板的