Umbraco学习2------数据类型

一、基础概念

在使用Umbraco这类CMS制作网站之前,先要搞清楚的是,和概念中网站制作的区别。

暂时忘掉所谓的ADO.NET存储、忘掉ASP.NET、忘掉多层架构什么的。

只需要关注:要显示什么、怎么显示、显示的内容。

举例来说,好比一篇新闻,首先要显示什么?(标题、发布时间、新闻内容、配图),其次是怎么显示?(标题在上,H1的字体,内容居中对齐,图片配在底部等),最后显示的内容(标题为Hello World、配图为世界地图等)。

首先建立起这个概念体系,才有助于对此类系统的使用。

1、显示什么

在Umbraco中叫Document Type,表示某个页面的类别,包含元素为Data Type,表示具体显示的元素类型,比如是图片,文字,视频还是富文本(在Sitecore中分别叫Template和Fields)。

2、怎么显示

在Umbraco中叫Template、Partial Views和Macros Views,这决定了某个页面的呈现方式,在Umbraco中已.cshtml文件的形式存在,包含主要的html代码(在Sitecore中分别叫Layout、Sublayout以及Render)。

3、显示内容

在Umbraco中叫Content,表示具体的信息内容,需要注意的,Conent必须依赖于Document Type而存在,却并不必须Templates的存在(在Sitecore中叫Items,其实这个表述不大准确,Sitecore中,任何一个元素都称之为Item)。

二、Document Type

1、创建基类"Document Type"

打开Setting标签,左键点击“Document Type”右侧的三个点,在弹出的联动菜单中选择"Create"。

在弹出的窗口中输入"Document Type"的名字,例如"BasePage",取消下面默认勾选的复选框"Create matching template",并点击"Create"按钮

之所以不选择"Create matching template",是因为我们第一步只是创建一个基类"Document Type",并不需要直接呈现,而是作为其他所有页面的父类,包含一些基础、通用的信息约定。

2、Info标签

在新创建的"Document Type"中,默认有4个Tab标签,默认显示的是Info标签,表示"Document Type"的基础信息。

Name:为刚创建的"Document Type"名称

Alias:别名,在查询时非常有用,也必须唯一

Allowed templates:由于没有创建Templates,因此目前为空,表示的是该"Document Type"可以被哪些模板引用

Default template:指定当创建当前"Document Type"对应的"Content"默认选择的模板

3、Structure标签

Structure标签主要定义"Document Type"的结构关系

Allow at root:指定当前"Document Type"对应的Content是否会显示在根节点

Enable list view:是否显示可排序及搜索菜单

Allowed chil node types:允许哪些"Document Type"对应的"Content"可以作为当前"Document Type"对应的"Content"的子节点

4、Generic propperties标签

默认的属性标签,可以把绝大多数通用的字段类型放置在这个标签内。

点击"Create new property"可以打开如上的添加属性界面。其中:

Name:属性名称

Alias:属性别名

Type:属性类型。注意,此处对应的实际上是"Developer"标签中的"Data Type"类型。具体可参考:https://our.umbraco.org/documentation/Getting-Started/Data/Data-Types/

Tab:属性归属于哪个Tab中

Mandatory:是否必填属性

Validation:正则表达式验证

5、Tabs标签

Tabs标签的作用,是给Properties标签添加数据分类。保存后,可以在"Generic properties"中看到新添加的tab。如上图。

三、应用

1、首页"Document Type" Structure Tab

如前所述,创建的只是基础类型,并不具备展示功能,实际的展示应该是由派生而出的"Document Type"所定义。下图表示的是该类型允许在根节点呈现,接受的子级为"Generic List"

2、首页"Document Type" 的"Generic properties" Tab

内容元素,只是针对于特殊的首页,增加了KV选择,名为:Main KV

当然,一个完整的网站,不可能只有上面这么一点内容。但是依据这个基础,可以不断的扩展网站,最终形成网站的主体骨架。

下一篇,要说网站的皮,Templates,不过目前还没拿到什么稿件,估计要等一段时间了吧。

时间: 2024-10-19 11:52:17

Umbraco学习2------数据类型的相关文章

MySQL学习笔记-数据类型与操作数据表

MySQL学习笔记-数据类型与操作数据表 数据类型:  1.字符型  2.整型  3.浮点型  4.日期时间型 数据表操作:  1.插入记录  2.查找记录 记录操作:  1.创建数据表  2.约束的使用 1.数据类型 [1]整型: 数据类型 存储范围 字节 TINYINT 有符号型:-128~127(-2^7~2^7 -1),无符号型0~255(0~2^8 -1) 1 SMALLINT 有符号型:-2^15~2^15 -1,无符号型0~2^16 -1 2 MEDIUMINT 有符号型:-2^2

java开始学习,数据类型和堆栈

一篇简单的文章作为自己转型的开始,以后由嵌入式开发转向安卓app开发 javaee企业版 javase 标准板,做桌面应用程序 javame小型版,针对小产品,比如手机(这个已经不用了,现在用的是安卓) java输出 System.out.print(a); print只是输出'字符'和"字符串"和 变量 print('a'+1) 变为输出 98 'a'的ASCII为97.print('你'+1):因为汉字也是存放表中 java不同数据类型运算注意事项 java数据类型分为byte 1

redis学习-sds数据类型

今天开始了redis的学习,本来想直接从源码看起的,不过看到有篇对redis介绍的基础教程 <Redis 设计与实现(第一版)> 于是决定从这个开始入门. 1.数据类型定义 typedef char *sds; struct sdshdr { // buf 已占用长度 int len; // buf 剩余可用长度 int free; // 实际保存字符串数据的地方 char buf[]; }; 2.重新计算新的长度 newlen = sdshdr.len + required_len if n

Redis学习之数据类型List详解

本文和大家分享的主要是redis数据类型中的list相关内容,一起来看看吧,希望对大家学习redis有所帮助. list即链表,它是一个能维持数据先后顺序的列表,便于在表的两端追加和删除数据,中间位置的存取具有O(N)的时间复杂度,是一个双向链表. 一.内部原理 redis内部实现代码在quicklist.c(注释:A doubly linked list of ziplists)中,它确实是一个双向链表,并且是一个ziplist双向列表. ziplist是什么? 一个经过特殊编码的的双向链表,

C语言基础学习基本数据类型-变量和常量

变量和常量 什么是变量和常量?有些数据在程序运行前就预先设定,并在运行过程中不发生变化,称之为常量:有些数据在程序运行中可能发生变化或被赋值,称之为变量. 使用变量前必须先声明一个变量.变量定义的语法是:数据类型名 变量名 ; 比如我们可以这样定义一个整型变量: int a;  //int类型表示整型 若要声明多个变量,可以逐个声明,也可以在数据类型名后面加上多个变量名,中间用逗号分隔: 数据类型名 变量名1, 变量名2, 变量名3; 创建变量的同时可以为其赋值,也就是初始化变量.语法为: 数据

Hadoop 学习自定义数据类型

(学习网易云课堂Hadoop大数据实战笔记) 序列化在分布式环境的两大作用:进程间通信,永久存储. Writable接口, 是根据 DataInput 和 DataOutput 实现的简单.有效的序列化对象. MR的任意Value必须实现Writable接口: MR的key必须实现WritableComparable接口,WritableComparable继承自Writable和Comparable接口: (本节先讲自定义value值,下一节再讲自定义key值,根据key值进行自定义排序) 以

python学习之数据类型

和其他高级编程语言一样,python也有它的各种数据类型,但相比其他语言来讲,python的数据类型相对好用,其中也包含有字符串.整形.浮点型等,但在介绍数据类型之前,也需要注意其变量的命名规则. 请务必牢记下述有关变量的规则: ? 变量名只能包含字母.数字和下划线.变量名可以字母或下划线打头,但不能以数字打头,例如,可将变量命名为message_1,但不能将其命名为1_message. ? 变量名不能包含空格,但可使用下划线来分隔其中的单词.例如,变量名greeting_message可行,但

C#学习之数据类型-(一:简介)

c#是强类型语言,对变量的类型要求很严格,如果是整数,就用int表示,如果是字符串就用string表示等等:因此每个变量和对象都必须具有声明的类型.它要求所有的变量都必须先定义后使用,相对而言JavaScript语言属于弱类型语言,它在声明变量时,不管什么类型,统一用var关键字.在此不做介绍. c#语言的数据类型有两种:值类型和引用类型.值类型放在内存栈中,而引用类型放在内存队中:在内存中存放的内容也是不一样的,值类型存放的是变量本身,而引用类型存放的是变量的引用. 打个比方:值类型相当于现金

Redis 学习(二) —— 数据类型及操作

Redis支持string.list.set.zset.hash等数据类型,这一篇学习redis的数据类型.命令及某些使用场景. 一.String,字符串 字符串是 Redis 最基本的数据类型.一个字符串最大为 512M 字节.字符串数据类型适用于很多场景,例如,缓存 HTML 片段或者页面. Redis 字符串是二进制安全的,也就是说,一个 Redis 字符串可以包含任意类型的数据,例如一张 JPEG 图像,或者一个序列化的对象. 我们可以把字符串当做位数组(位图)来处理,很容易统计一些基于

MySQL学习4 - 数据类型一

介绍 一.数值类型 二.浮点型 验证三种类型建表 验证三种类型的精度 三.日期类型 综合练习: 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 详细参考链接:http://www.runoob.com/mysql/mysql-data-types.html mysql常用数据类型概括: 数字: 整型:tinyint int bigint 小数: loat :在位数比较短的情况下不精准 double :在位数比较长的情况下不精准 0.00