phpcms v9 模型概念

一、什么是模型?

  模型是系统知识的抽象表示。我们不能仅仅通过语言来描述一个系统,也不能仅仅通过记忆来记录关于系统的知识。知识是通过某种媒介来表达的,这种媒介所表达的内容就是模型。而知识形成媒介的过程就是建模,或者称为模型化。通常模型可以使用多种不同的媒介来表达,比如纸质或电子文档、缩微模型/原型、音像制品等等。而表达模型的体现方式也是多种多样的,常见的有图表、公式、原型、文字描述等等。

  举例来说,一般新闻类的信息,都具有标题、内容、作者、来源、发布时间等属性。不论是国内新闻,还是国际新闻、基本都具有这些属性。那么我们就可以把这些属性模型化,在phpcms中我们理解成“内容模型”。

  很显示如果要做下载类网站,需要的模型肯定和普通的“内容模型”不一样,那么我们需要重要定义新的模型。

  phpcms 允许使用者根据自身需求自定义模型,来构建多样性网站。

二、phpcms v9 内置模型介绍

  phpcms v9 内置新闻、图片、下载三种模型,每个模型都分别自定义不同的属性,并可以为模型指定默认模版列表。

phpcms v9 模型管理和使用

一、修改模型默认模版

  每个模型都可以指定对应的默认模版,添加栏目时选择对应模型,可默认加载模型对应模版。如下图所示:

 注意:

  • 模版位于: phpcms\templates\default(风格名称)\content目录下
  • 栏目页模版命名必须以:category(*).html
  • 列表页以list 开头,如list_pro.html
  • 内容页以show 开头

二、模型字段管理

  每个模型都有多个的属性,每个属性都属不同的字段类型,我们可以通过模型字段管理来增减字段,并为字段选择类型,来自定义出自己所需模型,如下图所示:

模型管理列表

  每个模型都有多个的属性,每个属性都属不同的字段类型,我们可以通过模型字段管理来增减字段,并为字段选择类型,来自定义出自己所需模型,如下图所示:

内容模型的字段列表管理

摘要字段详情

三、如何使用模型

  模型可绑定栏目,新建栏目时选择模型类型, 这样在当前栏目下添加内容时将继承模型的定义。并自动加载被选模型的模版设置。如下图所示:

为栏目指定模型

自动加载被选择模型模版设置

phpcms v9 模型字段设置

一、字段设置选项作用

  字段管理设置时有一些选项,其中有些是比较重要的设置。现介绍如下:

 注意:

  • 是否为主表字段,将决定是否可直接在列表页进行调用显示。
  • 相关参数的配置,将随着字段类型的变化而变化。

phpcms v9 重点字段类型使用介绍

一、万能字段

  下面以建一个租房模型,来介绍万能字段的使用。首先建立租房模型,如下图所示:

  添加万能字段 tenement 别名为 租房信息详情 ,并在相关参数中加入附属字段设置,如下图所示:

  接下来添加万能字段 tenement  的附属字段,并在字段设置中,选择为万能字段附属字段,以户型室huxingshi为例,其它附属字段同样的操作,如下图所示:

  其它字段同上操作,完成后模型添加效果如下:

  说明:利用万能字段还可以做出更多的效果,大家也可以看一下内容模型里的系统内置投票字段。更多效果以待大家发掘。

二、联动菜单

  联动菜单常用于区域选择,分类选择等位置,v9内置联动菜单字段,结合扩展功能里 联动菜单的设置,即可做出多级菜单的联动效果,效果如下图所示:

后台使用效果

  下面我们以为租房模型添加一个所在区域联动菜单为例,说明联动字段的使用, 首先添加联动菜单数据,并选择菜单风格和应用站点范围(v9 支持多站点站群系统),如下图所示:

  接下来为刚才添加的联动菜单,添加菜单数据,如下图所示:

添加子菜单,如下图所示:

  添加完联动菜单数据以后,接下来进行联动菜单字段的添加,字段类型选择联动菜单,然后在相关参数设置选项,选择刚才添加的联动菜单项,如下图所示:

  添加完成以后,在模型应用栏目,添加信息时,就会出现联动菜单选择框,效果如下图所示:

PHPCMS v9 模型概念及用法的更多相关文章

  1. phpcms V9 内容模型管理

    [1]理解模型 模型,系统知识的抽象表示.既然抽象了,那就得脑补一下.大家都是面向对象设计的专业人员,类就很抽象的,对比类的定义想象一下模型的概念. 举个例子,一般新闻类的信息,都具有标题.内容.作者 ...

  2. phpcms V9 内容模型管理(转)

    转自:http://www.cnblogs.com/Braveliu/p/5102627.html [1]理解模型 模型,系统知识的抽象表示.既然抽象了,那就得脑补一下.大家都是面向对象设计的专业人员 ...

  3. phpcms v9 前台getshell脚本

    phpcms v9 前台getshell脚本 用法:python phpcmsv9getshell.py http://baidu.com # -*- coding:utf-8 -*- ''' --- ...

  4. phpcms v9 sql注入脚本

    phpcms v9 SQL注入脚本 用法:python phpcms.py http://www.baidu.com import requests,sys,urllib url = sys.argv ...

  5. PHPCMS V9二次开发]自定义字段模型-文本组

    phpcms v9,我们在做类似于酒店房型等类型的时候,需要用到文本组字段模型,但phpcms并未提供该模型.如下图所示效果: 展示效果如下: 步骤/方法 打开phpcms\modules\conte ...

  6. phpcms v9二次开发之模型类的应用(1)

    在<phpcms二次开发之模型类model.class.php>中讲到了模型类的建立方法,接下来我讲一下模型类的应用.      前段时间我基于phpcms v9开发了一个足球网.足球网是 ...

  7. phpcms v9二次开发之模型类的应用(2)

    二.模型操作方法select()--查询语句         //查询级别管理列表信息    public function levellists() { $lelists = $this->l ...

  8. 23个phpcms v9模板制作及二次开发常用代码案例

    0:调用最新文章,带所在版块 {pc:get sql="SELECT a.title, a.catid, b.catid, b.catname, a.url as turl ,b.url a ...

  9. PHPCMS V9开发文档

    内容模块 内容模块PC标签调用说明 模块名:content 模块提供的可用操作 操作名 说明 lists 内容数据列表 relation 内容相关文章 hits 内容数据点击排行榜 category ...

随机推荐

  1. ASP.NET 查询客户端请求IP地址

    public class CheckIP      {          #region 获取浏览器版本号             /// <summary>          /// 获 ...

  2. WordPress ‘crypt_private()’方法远程拒绝服务漏洞

    漏洞名称: WordPress ‘crypt_private()’方法远程拒绝服务漏洞 CNNVD编号: CNNVD-201306-250 发布时间: 2013-06-20 更新时间: 2013-06 ...

  3. 后缀.aspx.cs是什么软件的生成的

    ASP.NET技术 aspx ——ASP.NET文件(网页) aspx.cs ——ASP.NET文件中的代码页(与上面的对应) asp.net是微软公司推出的新一代网站程序开发架构,ASP.NET技术 ...

  4. CentOS安装搜狗词库

    中文输入使用ibus-pinyin. 在ibus-pinyin里使用搜狗词库 # wget http://hslinuxextra.googlecode.com/files/sougou-phrase ...

  5. Apache安装完服务没有安装的情况

    安装完apache之后(不是按照默认路径安装的,例如是 D:\ )右下方哪个小羽毛图标是没有启动的,左键不好使,而且提示“No services installed”,提示服务器没有被安装.解决方法: ...

  6. 引用 运行asp.net程序时候,编译器错误消息: CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Fra

    引用 运行asp.net程序时候,编译器错误消息: CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary A ...

  7. Java:Date、Calendar、Timestamp的区别、相互转换与使用【转载】

    1 Java.util.Date 包含年.月.日.时.分.秒信息 包含年.月.日信息. 继承自java.util.Date.在数据库相关操作中使用,如rs.getDate,ps.setDate等.rs ...

  8. Spring 4.0 StandaloneMockMvcBuilder java.lang.NoClassDefFoundError: javax/servlet/SessionCookieConfig 问题解决

    standaloneSetup(clrr). build(); 执行第二行 build() 时,出现下面的错误提示. java.lang.NoClassDefFoundError: javax/ser ...

  9. hdu-1010 dfs+剪枝

    思路: 剪枝的思路参考博客:http://www.cnblogs.com/zibuyu/archive/2012/08/17/2644396.html  在其基础之上有所改进 题意可以给抽象成给出一个 ...

  10. 利用"NOTIFYICONDATA"实现MFC的托盘程序

    本文章为转发百度空间内容,,保存一下,以防以后用到.. 一.自定义信息 在头文件中加入下面这句话: #define WM_SHOWTASK (WM_USER+1) 二.MYDLG.CPP文件中添加_m ...