zoukankan      html  css  js  c++  java
  • 生成Content Part需要生成的对象列表

    生成Content Part需要生成的对象列表

    1. A content part itself: 这是一个继承ContentPart 或 ContentPart<T> (T表示对应的record类型) 的普通类。如果不需要保存在数据库,则使用ContentPart,如果希望把数据存储在数据库中,则使用ContentPart<T>
    2. A content part record这是一个简单的POCO实体对象,这个对象代表part的数据。Orchard负责从底层数据库中获取和更新数据,所以这里除了定义你的record之外不用做任何其他事情。
    3. A handlerHandler继承自ContentHandler,负责告诉Orchard如何处理你的part:
      1. 数据库持久化
      2. 处理content item的生命周期事件
      3. 定义你的part要添加哪些已存在的content items
    4. A driver可以把Driver当做是一个content part的controller。它负责显示和编辑你的part。Drivers必须继承自ContentPartDriver<T>, T是你的content part类型。这里有3个方法可以重载:Display 和两个Editor
      1. Display method is called whenever your part is rendered in frontend.
      2. Editor方法:一个用来展现编辑窗口 (GET),一个用来展现保存窗口 (POST)。当你开始生成一个content item(例如一个新page)时调用第一个方法,当点击"Save"时触发第二个方法。

      类似与MVC的controller actions,这里的方法返回一个shape对象。Shapes通过参数中的动态对象方法去找.cshtml,例如如果我们在/Views/Parts目录下存在MyModule.MyPart.cshtml文件,则通过动态方法shapeHelper.Parts_MyModule_MyPart(…)来访问

    5. Display shapes (.cshtml Razor view files)这里就是Razor视图.cshtml文件,按照命名约定,显示用的模板存在于/Views/Parts 目录下,返回Editor driver方法时的模板存在于/Views/EditorTemplates/Parts目录下
    6. Data migration这是定义数据库的地方。一般我们通过在Orchard命令行输入codegen datamigration <your_module_name> 来生成目录。这里还可以更改一些设置等。
  • 相关阅读:
    Python连接MySQL数据库之pymysql模块使用
    线程
    进程
    网络编程
    面向对象进阶
    迭代器,生成器,装饰器
    函数的基础
    Andy's First Dictionary UVA
    Stripies POJ
    Soldier and Badges CodeForces
  • 原文地址:https://www.cnblogs.com/buyonesendone/p/3551848.html
Copyright © 2011-2022 走看看