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. 开发者应该避免使用的6个Java功能(转)

    本文作者是一名拥有多年Java开发经验的程序员,他从经验中得出,并不是所有的Java SE功能/API都值得程序员去使用,比如本文列举的这6个,大家在使用前得慎重对待.以下是对原文的摘译. 多年的Ja ...

  2. 【转】ubuntu打包压缩命令总结

    原文网址:http://blog.csdn.net/renero/article/details/6428523 .tar解包:tar xvf FileName.tar打包:tar cvf FileN ...

  3. Delphi HTTP error message: Can't execute C:\Program Files\Borland\Delphi7\Bin\serverinfo.exe 1813

    delphi  调用Webservice ,停止服务的时候总是爱提示: Internal Server ErrorHTTP status code: 500 HTTP error message: C ...

  4. 基于Minifilter框架的文件过滤驱动理解

    概述 Minifilter即File System Minifilter Drivers,是Windows为了简化第三方开发人员开发文件过滤驱动而提供的一套框架,这个框架依赖于一个称之为Filter ...

  5. HDU 4391 - Paint The Wall - 分块哈希入门

    题目链接 : http://acm.hdu.edu.cn/showproblem.php?pid=4391 题意 : 给一段区间, 有两种操作 1 : 给 x 到 y 的区间染色为 z 2 : 查询 ...

  6. Android 迷之Version管理

    很多时候会搞混Android中的几个Version minSdkVersion:指你所开发的应用程序能够兼容的最低系统.比如,你现在开发一款暴风.APK,你希望它能在Android已经发布的所有版本的 ...

  7. compile libvirt

    POSIX-linux 编译安装libvirt依赖包; 1.yum install device-mapper-devel

  8. js打开新的链接2

    window.open打开新的连接时可能会被浏览器拦截掉. 所以采用动态创建a标签的形式. var a = document.createElement('a');  a.href = myUrl;  ...

  9. .NET获取英文月份缩写名(可获取其他国家)

    来自: http://www.cnblogs.com/highend/archive/2010/03/16/1687126.html 今天在看本公司原有的项目代码当中 很不幸看到其中一些实现的部分代码 ...

  10. ListView列表拖拽排序

    ListView列表拖拽排序能够參考Android源代码下的Music播放列表,他是能够拖拽的,源代码在[packages/apps/Music下的TouchInterceptor.java下]. 首 ...