5

我研究了一段时间的 Orchard CMS,我对他的一些未来感到满意,但我也有一些我不知道如何处理的问题:

  • 所有项目(内容类型)都是线性的,它们不支持树状数据结构(例如:书籍 > 标题 > 网络链接)

  • 最大的问题之一(取决于您如何看待事物)是项目的模型和视图是耦合的(内容部分 > 带有显示/编辑器视图的驱动程序)

    因此,对于新页面,模型、视图和位置被锁定,您只能拥有模型的一个视图。

  • 高级语言期货的使用不适合初学者开发人员并且不是很清楚(动态功能,粘土对象 - 美好的未来,......)

    // Creating table VPlayerRecord
    SchemaBuilder.CreateTable("VPlayerRecord", table => table
    .ContentPartRecord()
    .Column("Title", DbType.String)
    .Column("VideoUrl", DbType.String)
    .Column("WidthPx", DbType.Double)
    .Column("HeightPx", DbType.Double)
    );
    

    这种语法对于初学者开发人员来说不是很清楚,并且有点过度设计。此外,由于模型是视图中的动态对象,我们没有任何智能感知支持。

  • 为了建立一个新页面,我们有类似三度分离(3个项目)

    • 构建内容部分模块
    • 构建内容类型
    • 构建主题模块

您如何使用 Orchard CMS 在您的项目中克服这些问题?以及您发现并修复了哪些其他问题:)

4

2 回答 2

3
  1. 阅读此: http: //orchardproject.net/docs/Creating-1-n-and-nn-relations.ashx和此: http: //orchardproject.net/docs/Creating-lists.ashx
  2. 这是一个怎样的问题,为什么你认为这是耦合?你看到什么替代方案?
  3. 你认为这是一个问题,它是如何阻碍你的?

编辑2:您只能拥有模型的一个视图是不正确的。您可以有任意数量的显示类型。例如,以这种方式处理项目的摘要视图。您也有管理视图的显示类型,您可以添加自己的。不知道你所说的“位置被锁定”是什么意思。如果我们按职位表示同样的意思,我很困惑你怎么会有这样的想法。可以通过placement.info 更改部件和字段的相对定位。

编辑 3:即使有这个例子,我也不确定这里有什么困难。这是相当富有表现力的imo。您是自己感到困惑还是只是假设人们会感到困惑?您声称这是过度设计的。那你会怎么简化呢?您认为不需要什么功能?您不会在模型对象的视图中获得 IntelliSense,但这样做所获得的灵活性在很大程度上证明了它的合理性。询问任何真正使用它的人。

新的第 4 点:我看不出您为什么将其分成三个模块或为什么您认为应该这样做的原因。我当然从未见过这样的例子。我还要指出,创建部件和类型通常由两个不同的人完成(类型创建者通常只是现有部件的消费者)。但同样,您不必将它们分成不同的模块。一个主题显然与其他两个不同的问题,作为一个单独的项目是有意义的,但一个主题可以带有代码,并且原则上实际上可以做模块正在做的所有事情。因此,如果您想将零件、类型和主题打包到一个包中,您可以这样做。这没有多大意义,但你可以。最后,我看不出这四点中的任何一点与页面创建有什么关系。

于 2011-02-22T00:18:51.037 回答
2

果园必须被视为一个挑战。作为一个初学者,我很快就轻松地建立了一些网站。在那之后,学习曲线变得更加陡峭。我已经阅读了很多关于这个主题的文章,无数次。

我以前使用过一些 CMS,并且对管理内容的本质有所了解。Learning Orchard 开启了内容管理的全新定义。现在我可以考虑通过实现 Orchard 来解决一些日常任务和各种业务流程。

整个事情都建立在一个非常抽象的层中,迫使你也去思考抽象。如果您遵循这种方式,那么有很多博客文章以及官方文档可以帮助您。

很少有基本的构建块和概念可以像积木一样使用。听起来像一个短语,我已经听过几百次了。我也看到过用红方砖砌成的千家万户,都是不同的,而砖都是一样的。这样的事情可以用果园来完成。

阅读并理解编程模式。它们是知识的重要组成部分,可以帮助您解决基于果园的任务。他们还将帮助您改变完成与果园无关的任务的方式。

我想说,有两个基本领域需要了解。存储和检索内容是一回事,而将其呈现给人群是另一回事。它可能看起来很难,很难,但背后的好东西是令人愉快的。更不用说伟大的人了,有些来自邪恶帝国,有些不是,这肯定会一路帮助你。不要忘记,git 是你最好的朋友。已经发明了许多轮子。小心,免费午餐都不提供。

PS自从usenet时代以来,我还没有写过这么长的帖子。它可能不适合这样的网站。这是一种感谢这位法国人以及来自波兰、从塞浦路斯到美国的所有其他果园传教士的方式。他们在很多场合救了我的屁股。

于 2015-01-23T21:32:08.987 回答