【问题标题】:Issues with Orchard CMSOrchard CMS 的问题
【发布时间】:2011-02-21 16:08:34
【问题描述】:

我已经研究了一段时间的 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 的项目中克服这些问题?以及您发现并修复了哪些其他问题:)

【问题讨论】:

  • 能否请您详细说明最后两点?
  • 这个编程有什么关系?

标签: c# orchardcms


【解决方案1】:
  1. 阅读这个:http://orchardproject.net/docs/Creating-1-n-and-n-n-relations.ashx 和这个:http://orchardproject.net/docs/Creating-lists.ashx
  2. 这是怎么回事?为什么您认为这是耦合?您认为有什么替代方案?
  3. 您认为这是什么问题,它是如何阻碍您的?

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

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

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

【讨论】:

  • 我已经编辑了主帖,你可以看看。感谢您的第一个建议。
【解决方案2】:

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

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

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

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-04
    • 2015-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多