惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LangChain Blog
博客园 - 司徒正美
美团技术团队
Martin Fowler
Martin Fowler
雷峰网
雷峰网
aimingoo的专栏
aimingoo的专栏
博客园 - 三生石上(FineUI控件)
Vercel News
Vercel News
酷 壳 – CoolShell
酷 壳 – CoolShell
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
爱范儿
爱范儿
U
Unit 42
Y
Y Combinator Blog
月光博客
月光博客
Hugging Face - Blog
Hugging Face - Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
GbyAI
GbyAI
H
Help Net Security
量子位
Last Week in AI
Last Week in AI
博客园_首页
腾讯CDC
小众软件
小众软件

博客园 - 二十四画生

Orchard 1.3新功能之——Markdown编辑器 Orchard 1.3 发布了! Orchard中的计划任务功能(Schedule) Orchard网站App_Data目录里的文件介绍 在Orchard中使用样式及脚本 Orchard中的多站点功能(Multi-Tenant) Orchard中的多语言功能 Orchard中的列表功能 Orchard中的用户、角色及权限 自定义Orchard站点辅助工具——Shape Tracing Orchard中的形状候补(Alternates) Orchard是如何呈现内容的 理解Orchard中的placement.info文件 详解Orchard主题(Theme) 在Orchard中创建一个自定义字段类型 Orchard动态编译机制 在Orchard中为命令行工具(Command-Line)添加一个新命令 在Orchard中处理一对多关系 在Orchard中创建一个主题(Theme)
Orchard 1.3新功能之——规则(Rules)
二十四画生 · 2011-10-17 · via 博客园 - 二十四画生

Posted on 2011-10-17 15:55  二十四画生  阅读(4344)  评论()    收藏  举报

    Orchard 1.3中新增了一个十分重要的功能,这就是规则(Rules)。它相当于一个事件触发器,可以在某个事件发生的时候执行某种操作。这个功能的最大亮点就是:事件和操作都可以由模块开发人员自由定义,使用者只用在后台管理中组合这些功能来达到自己所需的效果。最常见的应用就是邮件通知了。我们可以设定当有新评论提交的时候来通知管理员,这样就可以及时提醒管理员来处理所提交的评论了。

启用Rules功能

首先如果要使用Rules功能就必须先启用它。进入Orchard后台管理的Modules菜单可以看见新增了一个Rules的分类。

默认情况下(Orchard安装版),Rules分类下共有四个功能:

Comments Rules:定义了一个评论特有的操作——关闭评论。

Contents Rules:定义对内容操作的一些基本事件,如:创建内容,修改内容,发布内容和删除内容。Content是Orchard中一个基础内容,Orchard中的所有类型的内容都是继承它的。所以Content中定义事件适用于所有其他类型的内容。

Rules:提供管理和配置系统事件触发的基本功能。所有的Rules功能都需要依赖于它,启用它后在后台就会新增一个Rules菜单用于对规则的管理。

Scripting Rules:一个可以执行脚本语言的模块定义的规则。暂时不知道能做什么用。

通常我们要用规则的功能就需要启用Rules和Content Rules这两个功能。另外还有一个Email Messaging模块在Orchard安装版中没有默认提供,但我们也可以去Gallery安装一个。在这个Email Message的Rules中定义了一个发送Email的操作。

定义一个规则

下面我们就通过定义一个通知审核评论的规则,来体验一下Orchard规则的用法。

首先我们需要启用Rules、Content Rules和Email Rules这三个功能。并且配置好SMTP服务。安装Email Message后,可以在Settings下面可以看到一个Email菜单,再那里配置就可以了。

然后,进入Rules菜单,点击Add a new Rule按钮,再接下的界面中输入规则名称,如:

点击Save

点“Add a new Event”来添加一个评论创建的事件。

选择ContentCreated事件

并指定此事件仅适用于Comment类型。点击Save后回到编辑规则的界面,再点击“Add an Action”。

选择“Send e-mail”事件。

配置需要提醒的对象及提醒邮件的内容。这里提醒对象设置为站点管理员,所以我们还需在Users里面添加好管理员的邮箱。(这个地方的提醒对象不能指定评论审核员,我觉得此处功能需要再细化,也许这个邮件提醒的规则应该做到评论模块中。希望能在以后的版本中Orchard能对这个地方有所改进。)另外看见邮件标题和内容旁边的那个小图标没有,这个表示此处的内容可以使用可替换关键字功能(Tokens)。这也是Orchard 1.3的新增功能,不过不是本文的重点就先不介绍了。点击Save回到规则编辑页面。

最后点击“Save and Enable”就可以完成规则的配置了。(注:如果直接点击保存此规则是不会生效的,一定要启用才行)

最后,我们随便发表一个评论就能看见效果了。

总结

目前规则功能用下来的感觉就是功能还很简单,事件触发规则还比较弱,目前只能做到某一类型的内容,但是还不能限定某一时间范围,某一人操作的内容。也就是说我们可能需要更加细致的规则。但是总的来说规则功能的发展潜力应该是无限的。比如:消息通知,流程处理等地方应该都可以发挥它的作用。