在上篇中主要详细的叙述了代码的编写,这一篇主要讲解配置。可能有人会有疑问,在上一篇的代码里只有对数据的展示部分的编写,并没有提供数据源。这就是Orchard的强大之处,数据源是通过在后台配置的,那有人又会问了数据存放在哪里呢?在这里我自己定义了ContentPart 和ContentType来存储放自己想要展示的数据,怎样才能让上一篇的布局代码展示自己存储的数据呢? 首先需要创建展示的数据,数据字段定义如下图:

因为这个布局比较简单只是展示一些新产品的图片,所以我把展示的产品图片都放在一条记录里面,现在要展示的记录已经准备好啦,接下来我需要定义Queries让Widgets能够知道如何展示我们的数据,Queries需要配置有三部分如下图:

第一个配置项Filters是用来限定数据的范围,第二个配置项Sort Criteria用来规定数据展示的排序,第三个配置项Layouts是来定义数据展示的形式,在这里需要注意的是在点击Add a new Layout 链接时系统会让你选择布局,这时就会出现我们在上篇文章里定义布局名称ProductsList,还记得他是在哪里定义的吗?是在ProductsListLayout类的 Describe方法中。

ProductsListLayoutForms表单具体配置如下图:

到此我们已经配置好了需要展示的数据源和怎样展示,接下来我们需要让其在首页显示,点击Orchard后台管理的左侧导航的Widgets,进入Widgets的配置界面,把当前布局定义调整到首页,在首页BeforeMain上新增一项Widget配置如下图:

到此配置部分也就结束了。Orchard中widgets是不是有些像asp.net webForm里的webpart。可它没有webpart使用起来方便,不过给我们更多的发挥空间,我也就是抛砖引玉,如果大家感觉文章对你有点帮助,请点击一下本站www.ubof.cn

在Orchard CMS Theme 用代码定义布局Widgets 配置的更多相关文章

  1. 在Orchard CMS Theme 用代码定义布局Widgets

    因为公司业务需要,经过本人几个月尝试,使用Orchard CMS 开发一个简单的企业门户(地址是http://www.ubof.cn).在刚开始接触Orchard CMS,对于个性化的网页布局不知道怎 ...

  2. [Orchard CMS系列] 创建主题(Writing a new theme)

    本文需要对Orchard CMS有基本了解. 开启模块 code generation 创建新的主题工程骨架 Codegen theme MyTheme 创建主题样式 src\Orchard.Web\ ...

  3. Orchard CMS中如何打包不带源码的模块

    在Orchard CMS的官网已经提供了文档说明如何打包,但是如果使用它的打包方式,打好的nuget包是带源代码的.如果是为开源系统写模块,不需要关注源代码是否可见.但是如果是用Orchard CMS ...

  4. SharePoint 2013 图文开发系列之代码定义列表

    在SharePoint的开发中,用Visual Studio自定义列表是经常会用到的,因为很多时候,我们并不会手动创建列表,而手动创建列表在测试服务器和正式机之间同步字段,也很麻烦,所以我们经常用代码 ...

  5. WPF中通过代码定义模板

    WPF中可以再XAML中定义模板,也可以通过C#代码定义模板,通过代码可能更清楚的看清其逻辑,而且代码的好处就是可以随时动态的去操作,而在XAML中定义的一般都是静态的. //控件呈现的显示内容1(这 ...

  6. SharePoint 2013 设置自己定义布局页

    在SharePoint中.我们常常须要自己定义登陆页面.错误页面.拒绝訪问等:不知道大家怎样操作,曾经自己常常在原来页面改或者跳转.事实上SharePoint为我们提供了PowerShell命令,来改 ...

  7. 在 Windows Azure 网站 (WAWS) 上对 Orchard CMS 使用 Azure 缓存

    编辑人员注释: 本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 撰写. 如果您当前的 OrchardCMS 网站在 Windows Azure 网站 ...

  8. Orchard CMS -Migration文件更新后数据库不更新的问题 new properties not updating after migrationData migration is not working?

    Orchard CMS - new properties not updating after migrationData migration is not working? If your mapp ...

  9. cucumber java从入门到精通(2)用代码定义步骤

    cucumber java从入门到精通(2)用代码定义步骤 上一节里我们定义了feature文件,feature文件就是自然语言描述的用例文件,它有一定的章法,具体的潜规则是: 使用Feature关键 ...

随机推荐

  1. finally块的问题(finally block does not complete normally)

    http://blog.csdn.net/chh_jiang/article/details/4557461 当finall块中包含return语句时,Eclipse会给出警告“finally blo ...

  2. Postfix telnet www.azengna.com 25 Connection Refused 但是localhost连接成功

    修改配置文件 vi /etc/postfix/main.cf 原先配置信息 .... inet_interfaces = all #inet_interfaces = $myhostname,loca ...

  3. 杭电 2553 N皇后问题 (dfs)

    Description 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上. 你的任务是,对于给定的N,求出有多少种合 ...

  4. nginx.conf的完整配置说明

    #用户 用户组 user www www; #工作进程,根据硬件调整,有人说几核cpu,就配几个,我觉得可以多一点 worker_processes 5: #错误日志 error_log logs/e ...

  5. Linux如何查看CPU负载

    负载(load)是Linux机器的一个重要指标,直观了反应了机器当前的状态.如果机器负载过高,那么对机器的操作将难以进行. linux的负载高,主要是由于CPU使用.内存使用.IO消耗三部分构成.任意 ...

  6. 【转载】CentOS6.5升级手动安装GCC4.8.2

    一.简易安装 操作环境 CentOS6.5 64bit,原版本4.4.7,不能支持C++11的特性~,希望升级到4.8.2 不能通过yum的方法升级,需要自己手动下载安装包并编译 1.1 获取安装包并 ...

  7. Computer (树形DP)

    A school bought the first computer some time ago(so this computer's id is 1). During the recent year ...

  8. SQL2012通用分页存储过程

    --提取分页数据,返回总记录数 Createprocedure [dbo].[sp_Common_GetDataPaging_ReturnDataCount] ( @SqlString varchar ...

  9. 【HDOJ6322】Euler Function(数论)

    题意: 思路: #include <stdio.h> #include <vector> #include <algorithm> #include <str ...

  10. 【转载】js中对象的使用

    原文链接:http://www.jb51.net/article/90256.htm[侵删] 简单记录javascript中对象的使用 一.创建对象 //创建一个空对象 var o={}; //创建一 ...