如何使用元数据使用DD4T呈现HTML片段


3

我们目前的实现是在网站上显示不同的表单。
这些表单显示为HTML小部件,即AJAX请求发送给销售应用程序,销售应用程序返回HTML片段。 此HTML片段不过是表单的初始屏幕。 但由于销售应用程序的延迟,我们正面临以下问题。

  1. 整个页面需要8-10秒来加载

  2. HTML中的形式被放置在页面的中间部分,因此,直到被显示几秒钟的时间形式加载页脚节和一次的形式是装页脚部分向下滚动,这给用户带来恼人的体验。

  3. 有时用户点击页脚链接(直到加载html表单时)并转到下一页,因为页面上没有内容。

CMS实现:

  1. 空div(占位)从CMS方公布。

  2. 使用在页面加载销售应用程序AJAX调用被称为

  3. 销售应用程序返回形式HTML控件。

  4. 占位符的内部文本被替换运行时显示窗体。

为了解决这个问题,我们都在思考:

  1. 介绍与RTF场的模式将包含HTML表单(第一个画面)。

  2. 将使用此模式创建9个不同的组件。

  3. 每个组件都有唯一的元数据关键字来标识它是哪种形式。

  4. 在使用元数据键的内容交付方,将检索并显示页面上的相应组件。

有没有其他更好的方法来实现它?

我们在当前的实现中使用DD4T JAVA,我们可以在视图中放置html,但我们需要通过CMS来管理它。

+2

作为一种替代方法,你可以创建一个标准的MVC端点您的DD4T应用程序调用您的销售应用程序并缓存结果。这会让你的AJAX调用速度更快,或者你可以将调用作为页面组装过程的一部分并呈现给服务器端。 16 2月. 152015-02-16 11:25:34

2

带有RTF字段的模式/组件不应该用于表单,这不是一个正确的方式。无论你在CMS中存储什么,都应该是内容,而表单不是内容,而是HTML。

什么是更好的解决方案是定义一个Schema,它可以让你建立一个表单,这样XML(组件)的XML就可以包含表单的描述。然后你的观点应该根据定义建立HTML格式。

但是,当走这条路线时,我仍然想知道你是否会在后期阶段遇到你的表现不好的销售应用程序。因为我收集你确实希望这仍然处理表单帖子并生成/返回结果。所以我真的想知道如果不是建立这种解决方法,你应该投入一些时间来试图让你的销售应用程序执行并保持原来的解决方案...