欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

纸壳CMS现已支持自定义扩展字段

程序员文章站 2022-03-22 14:33:14
纸壳CMS现已支持自定义字段,在不修改代码的情况下,可以对系统中的一些模块进行字段的扩展,如页面,文章、产品等。 ......

简介

纸壳cms是开源免费的可视化内容管理系统。

纸壳CMS现已支持自定义扩展字段

github

https://github.com/seriawei/zkeacms

自定义字段

纸壳cms现已支持自定义字段,在不修改代码的情况下,可以对系统中的一些模块进行字段的扩展,如页面,文章、产品等。

自定义字段功能在系统->自定义字段菜单下,点击要修改的模块,即可对字段进行字义:

纸壳CMS现已支持自定义扩展字段

你可以在这里调整字段的顺序,添加或者删除字段:

 纸壳CMS现已支持自定义扩展字段

字段的操作,可以参考这个文章:

使用扩展字段

扩展字段和系统字义的字段在使用上还是有差异的。扩展字段的信息存储在model.properties属性下面,在模板中使用时,我们尽量让它们和普通字段用起来没差异。例如有添加了一个扩展字段:customproperty,下面将介绍它的使用。

razor

在razor在使用时,如果有指定model的类型,则要通过get方法来获取,或者将类型转换成动态类型后直接获取

@model articleentity
<h1>
    @model.get("customproperty")
</h1>
<h1>
    @(((dynamic)model).customproperty)
</h1>

如果没有指定model类型,model的类型为dynamic,则可以和使用普通字段一样使用自定义字段 

<h1>
    @model.customproperty
</h1>

fluid

在fluid模板中使用和普通字段一样:

<h1>{{this.model.customproperty}}</h1>

json序列化

在服务端将对象用json方式序列化返回客户端时,中序列化的结果中,自定义字段和普通字段一样,结果如下:

{
    title:"test",
    customproperty:"propertyvalue"
}

在客户端提交数据时,当作正常字段提交处理即可: 

$.ajax({
    type: "post",
    url: "/webservices/createmarkers",
    data: json.stringify({ title: 'name',customproperty:'propertyvalue'}),
    contenttype: "application/json; charset=utf-8",
    datatype: "json",
    success: function(data){alert(data);},
    failure: function(errmsg) {
        alert(errmsg);
    }
});

原文地址: