刚学习完dedecms的标签语法,我有很多困惑,觉得标签的意义比较抽象,不知道如何用标签来写一些具体的内容。如果有一些数据库的编程经验,就知道一个很常用的编程范例—增删改查。比如说,我要建立的是书本的模型,有索书号,书名,类型……,之后要写一个网页来完成书本信息的增删改查,这篇文章主要解决这种问题。
一频道(内容模型)
我很长时间弄不清频道和栏目的区别。从网上找了一些解释如下:
栏目就是网站中导航划分出的模块,如百度中的新闻、网页、贴吧等就是栏目。
频道是栏目的类型。官方的定义是:频道指内容模型,网站的栏目都是基于不同的模型建立的。也就是说一个频道还可以衍生出多个栏目,一个栏目只对应于一个频道。
查到了以上定义后,我以为对频道和栏目已有较深刻的认识了。直到我遇到这个问题,“什么时候建立频道,什么时候建立栏目?”
频道对应于数据模型,当要建立一个新的数据模型,就要建立频道。如书本模型,它和文章模型,图片模型的数据表结构不同。一个新的模型有以下的元素:数据表,增删改代码。
而栏目是对应于功能而言的,就像百度中的新闻、网页、贴吧,什么时候要添加栏目还是比较明显的。3种模板属于栏目的元素。
“一个频道还可以衍生出多个栏目”这句话有点虚,实际中网页中的内容都很饱满,每个栏目的内容都可能很不同,除了实用的文章模型外,基本每个频道都为一个栏目而设。
在dedecms中,有频道>栏目>文章这几个基本的单位。每个单位都会用id号唯一标识,频道(cid,channel id),栏目(tid,type id),文章(aid,article id) 。
二添加模型
关于添加模型,不妨看下这篇文章。它主要讲操作步骤,我会结合操作讲讲原理。上面提到,一个模型有数据表,增删改代码这两个元素,下面就按这个思路发展。
点击了“增加新模型”后,会看到表单中的附加表,填dede_addonXX,XX就是前面填写的名字标识。Dedecms中的文章不是指具体的文章,更像是记录。如图片频道中,上传的一张图片就是一个文章。所以一篇文章由两部分组成,其一是基本信息,如作者,发布时间等,记录在dede_archives中,这个表称为主表。每个频道的文章信息,存在附加表中,如图片频道的附加表为dede_addonimages。
顺便说一下,在模型性质处有独立模型的选项,就是新建立的模型中,文章在dede_archives没有记录。可能见到dede_archives中多余的字段太多,不是每个模型都需要,才有这种设计。独立模型更多叫单表模型,缩写为sg,有专门的sgarclist。现在刚刚接触,就先不理它。
在“增加新模型”的表单提交后,会看到数据库中多了一个dede_addonXX的表,不要急着定义这个表的字段,因为dedecms会辅助我们完成这个过程。
现在大约来到“这篇文章”的第三点,依次进入 内容模型管理>dede_addonXX的修改>字段管理>添加新字段 就可以为dede_addonXX添加字段了。添加完一个字段提交后后,会回到字段管理的页面,看到“模型字段配置”,是一个代表刚才定义过程的标签,这是手动定义数据库表所没有的。总之,对附加表用该方法添加新字段会更好。
关于增删改的代码,在前面的档案发布/修改/管理出已经定义了。开始时,用archives_add.php,archives_edit.php和content_list.php。由于dedecms有自动表单功能,所以这个文件基本够用了。自动表单的意思是前面添加新字段时设置的字段,会在add,edit等表单中以控件形式出现,不需用户添加代码。如果觉得不够用,可以参照archives_add.php等DIY一下。
这样自定义的频道就可以用来生成栏目,像默认栏目一样好用。
对于增删改,这可能只是主模型的搭建,对于辅助模型也可以参照其他后台管理代码,像分类信息模型中,增加一个地区表。要搞清后台管理,有要费一番功夫。
增删改功能不仅限于后台,前台也有这些功能。前台就不能用表单这种呆板的提交,可能要用到ajax。可参考系统顶踩功能和评论功能的实现。
三使用模型中的数据
增删改后还剩下查,这个功能的特点是不用填很多表单。数据的查询一般用标签完成,field,arclist,list及其衍生标签已经覆盖了不少情况。
在文章模板中能用field标签查询附加表的字段,而在列表模板中,也能通过arclist查询到附加表的字段,如下:
<tr>
{dede:arclist addfields='sjdz,yysj' channelid='1}
<td>商家地址:[field:sjdz/]</td>
<td>营业时间:[field:yysj/]</td>
{/dede:arclist}
</tr>
关键是addfields和channelid,addfields里面是你的自定义字段,channelid如果是普通文章就是1
当然也有不少情况是不够用的,要自定义标签。可看看下列文章:文章1,文章2
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除! 自定义模型相关文档推荐
dedecms织梦无需登录注册可下单购买的修改 dedecms织梦无需登录注册可下单购买的修改,首先找到/plus/carbuaction.php文件,找到如下代码: //确认用户登录信息if($cfg_ml-IsLogin()){ $userid = $cfg_ml-M_ID;}else{ $username = trim($username); $password = trim($password); if(empty($username) 织梦dedecms注册会员列表常用sql分析 用过织梦dedecms的人都知道,织梦会员系统相当强大,跟论坛程序差不多,对于使用会员系统的人来说,织梦系统足够用的了,但是,有时候,织梦系统很多的地方又不是我们所希望,或都说,有的地方不适合我们使用,这时候就要对织梦会员系统进行二次开发,所以, dedecms怎么在注册会员页面增加一个字段 我们在用到织梦dedecms的会员功能时候,注册页面的注册项需要增加,比如想多加一个手机号的字段,需要怎么操作呢?下面我们以增加一个手机号的字段为例子 1、找到网站目录下的/member/templets/reg-new.htm,在合适位置增加一行表单,代码如下: lispan手机 dedecms自动统计当前栏目文档总数方法 SQL语句中,有统计的函数,我们可以通过在织梦中使用SQL语句统计的方法,在列表页内显示该栏目共有多少篇文章。这样做的好处是,有助于提升用 户体验。比如说我一个文章列表下面有10篇文章,就自动统计出10篇,到20篇的时候自动统计成20篇。这样用户对网站的 dedecms织梦artlist和list标签调用图集图片实现方法 我们在做 织梦模板 开发时,有时需要在artlist 和list标签中调用出图集中的图片,同时可以自定调用几张图片。跟版网整理了个一个这样功能的自定义函数。调用后效果如下: dedecms织梦artlist和list标签调用图集图片实现方法 函数代码 请将代码加入到 /includ 织梦模板中隐藏指定字段仅对会员显示 大家都知道,Discuz程序在发文章时有个【隐藏】功能,可以限制这个隐藏内容供某些级别的会员查看。 在织梦模板中,做些改动,也是可以实现的。例如:电话号码,下载地址等等。 前提是织梦开启会员功能,已经有了自定义字段。 一、建立文件 ajax_loginsta_c.p 织梦安装使用织梦二次开发织梦优化织梦标签dedecms教程织梦安全- • 织梦导航栏的调用方法之顶级栏目、二...
- • dedecms模板中运用dede标签时使用php...
- • dede织梦如何设置绑定二级域名...
- • dede实现手机wap浏览...
- • 织梦dede后台 服务器左侧菜单空白或...
- • 织梦DEDECMS在软件列表页调出下载链...
- • dedecms的uploads和data目录data/com...
- • DedeCMS修改模板默认CSS文件分析全过...
- • dede图片采集规则的编写方法...
- • dede评论功能游客可以对文章进行评论...
- • 织梦DEDECMS后台所有文章列表显示不...
- • 使用dedecms自带采集功能的文字过滤...
- • 织梦导航栏的调用方法之顶级栏目、二...
- • dedecms模板中运用dede标签时使用php...
- • dede织梦如何设置绑定二级域名...
- • dede实现手机wap浏览...
- • 织梦dede后台 服务器左侧菜单空白或...
- • 织梦DEDECMS在软件列表页调出下载链...
- • dedecms的uploads和data目录data/com...
- • DedeCMS修改模板默认CSS文件分析全过...
- • dede图片采集规则的编写方法...
- • dede评论功能游客可以对文章进行评论...
- • 织梦DEDECMS后台所有文章列表显示不...
- • 使用dedecms自带采集功能的文字过滤...