jeecms栏目模型和内容模型的使用以及对应前台的标签中的属性名
第一步:模型管理-添加模型:
栏目模板前缀设定方案下的channel目录下的ch_menu.html作为浏览栏目的模板页。对应访问网址:项目名/栏目名(一级或者二级栏目如news或者gnxw)/index.jhtml。该url相当于Action,WEB-INF/www/方案名/channel/ch_menu.html作为对应模板来使用。
例如:jeecms/news/index.jhtml。所对应模板文件:WEB-INF/www/default/channel/ch_menu.html。
内容模板前缀设定录下的content目录下的默认(default.html)作为浏览内容的模板,如果指定了名称,如:cn_menu,则按照指定的名称浏览内容cn_menu.html。对应的访问网址是:项目名/栏目名(该内容对应的父栏目名,如gnxw)/ID(文章对应的数字).jhtml。如果该内容为空在对应的模板名字为default.html否则对应名字为“指定名.html”。
例如:jeecms/gnxw/518.html。对应的模板文件:WEB-INF/www/default/channel/default.html。(内容模板前缀不填的前提下)
第二步:添加栏目模型的自定义字段和内容模型的自定义字段。
这里栏目模型和内容模型分别对应返回前台的bean数据所对应的字段。打开栏目模型:
其中tplChannel和tplContent字段分别表示是否使用已经存在的模板,这里可以不选择。如果选择则使用指定的模板,不选择则使用刚才在模型中定义的模板如cn_menu和default(c或者(co_menu)模板文件。
同样道理设置内容模型:
其中typeId必须填写,这是用来指定内容类型,channeId也是必须填写,用来指定属于哪个栏目,在录入内容时,栏目部能是顶级栏目。
第三步:
模型建立好之后,点击“栏目”,点击树形列表中根,再右上角选择“添加子栏目”。这里的子栏目就是刚才在第一步里面建立好的模型。选择菜单,建立菜单类栏目(一级菜单,相当于文件夹)。建立好之后再建立二级子菜单例如:前台菜单,因为添加内容时,选择栏目不能选顶级菜单,所以要建立二级子菜单。
例如:这是默认方案default目录下,channel和content目录下可选择的模板。
保存之后,前台可以通过@cms_channle*这样的标签访问栏目,使用@cms_content*这样的表情访问内容。那么他们返回的栏目信息的bean 有的是channel类型有的是List<channel>,无论哪一个,都可以参照第二步:“栏目模型的自定义字段和内容模型的自定义字段”里面的字段名,使用返回的bean属性名。例如:title,name,url之类,因为channel是继承了其他基类,所以有些属性没有再上图中体现出来!
一级菜单:
二级菜单:
注意访问路径不一致!
这里有一个bug.例如先设定为default方案之后,在设置模板时候,模板的路径就包含了方案的路径,如下图。当方案改变时,这里的模板路径没有跟随方案一起改变所以访问
Jeecms/gnxw/518.html时,会映射到default方案下的channel/news_child.html。这样的话,当前方案不应该包含这个栏目,却可以访问(css会有影响,但数据没有影响)
jeecms栏目模型和内容模型的使用以及对应前台的标签中的属性名的更多相关文章
- s:textarea中的文本内容在什么时候才能被赋值给Action中的属性?
下面是jsp程序片段: <s:form id="startForm" name ="startForm" action="/hall/hall_ ...
- python 全栈开发,Day47(行级块级标签,高级选择器,属性选择器,伪类选择器,伪元素选择器,css的继承性和层叠性,层叠性权重相同处理,盒模型,padding,border,margin)
一.HTML中的行级标签和块级标签 块级标签 常见的块级标签:div,p,h1-h6,ul,li,dl,dt,dd 1.独占一行,不和其他元素待在同一行2.能设置宽高3.如果不设置宽高,默认为body ...
- 03_MyBatis基本查询,mapper文件的定义,测试代码的编写,resultMap配置返回值,sql片段配置,select标签标签中的内容介绍,配置使用二级缓存,使用别名的数据类型,条件查询ma
1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> < ...
- 配合dedecms内容模型实现后台输入栏目id前端输出文章列表
为了简化开发的工作量,也方便编辑快速操作,决定将后台进行重新设置.配合dedecms内容模型实现后台输入栏目id前端输出文章列表,这样制作科室专题页也变快了很多.比如,我们添加一个“科室专家栏目id” ...
- phpcms V9 内容模型管理
[1]理解模型 模型,系统知识的抽象表示.既然抽象了,那就得脑补一下.大家都是面向对象设计的专业人员,类就很抽象的,对比类的定义想象一下模型的概念. 举个例子,一般新闻类的信息,都具有标题.内容.作者 ...
- phpcms V9 内容模型管理(转)
转自:http://www.cnblogs.com/Braveliu/p/5102627.html [1]理解模型 模型,系统知识的抽象表示.既然抽象了,那就得脑补一下.大家都是面向对象设计的专业人员 ...
- cms内容模型标签
内容模块 内容模块PC标签调用说明 模块名:content 模块提供的可用操作 操作名 说明 lists 内容数据列表 relation 内容相关文章 hits 内容数据点击排行榜 category ...
- dedecms自定义模型之独立模型在首页、列表页、内容调用内容
dedecms关于自定义模型(独立模型)的首页.列表页.内容怎么调用?在后台自定义模型(独立模型)的建立及自定义字段的添加比较简单,需要注意两点: (1)如果某个字段需要在前台列表页显示,则在前台参数 ...
- dedecms新建内容模型以及如何添加字段
dedecms新建内容模型以及如何添加字段 内容模型就是我们所说的频道模型,利用频道模型可以实现其使用他的栏目具备一些功能,比如说,图片模型,在使用他的栏目中就可以发表多个图片,并且能够达到相册的功能 ...
随机推荐
- leetcode357
public class Solution { public int CountNumbersWithUniqueDigits(int n) { ) { ; } ; ; ; && av ...
- GNU/Linux操作系统总览
计算机科学本科的专业课包括高等数学.离散数学.模拟电子技术.数字电子技术.微机原理.汇编语言原理.高级程序语言.操作系统原理.高级编译原理.嵌入式原理.网络原理.计算机组成与结构等诸多科目.GNU计算 ...
- Quartz.NET文档 入门教程
概述 Quartz.NET是一个开源的作业调度框架,非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等. Quartz.NET允许开发人员根据时间间隔(或天)来调度作业.它实现了 ...
- UNITY Destroy()和DestroyImadiate()都不会立即释放对象内存
如题,destroyimadiate是立即将物体从场景hierachy中移除,并标记为 "null",注意 是带引号的null.这是UNITY内部的一个处理技巧.关于这个技巧有很争 ...
- winfrom在图片上实现绘制
在控件加载入图片的基础上进行绘制内容 添加文字 首先就是要确定输入的文字,还有文字的样式. 文字的样式用到了FontDialog控件,获取文字呢,就放个textbox就可以了.如果在输入文字的显示展示 ...
- 此时servlet中的request和我们在页面jsp中的request 是同一个request.
在tomcat容器启动的时候,jsp页面的内置对象request,response,同样是依赖于tomcat容器中的servlet-api.jar包,这个jar包和我们在web项目中的jar包是一样的 ...
- 695. Max Area of Island最大岛屿面积
[抄题]: 求最多的联通的1的数量 Given a non-empty 2D array grid of 0's and 1's, an island is a group of 1's (repre ...
- 20. Valid Parentheses检验括号字符串的有效性
[抄题]: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if th ...
- RedHat 6 下配置网卡IP地址,Virtual Linux下配置网卡IP
经常用到,自己Mark一下,顺带给需要的人参考. 1.配置文件修改 $ vi /etc/sysconfig/network-scripts/ifcfg-eth0 内容: DEVICE="et ...
- 全新的css网站布局--Grid布局
Grid布局全新的css网站布局 CSS Grid 布局由两个核心组成部分是 wrapper(父元素)和 items(子元素). wrapper 是实际的 grid(网格),items 是 grid( ...