【发布时间】:2015-05-28 11:44:14
【问题描述】:
我们有一个渲染列出当前项目中 TreeSelect 中的选定项目。在我们的例子中,我们称它们为“标签”(1)
我们在组件中添加了一个字段编辑器按钮,让编辑器更改所选项目。 (2) (例如Adding a custom component 上的描述)
当编辑器单击 (2) 编辑器窗口 (3) 时,它会在对话框中打开。编辑器可以使用 TreeSelect 选择不同的项目(在我们的例子中称为标签)。
当编辑器按下确定按钮 (4) 时,值被设置。
现在问题来了:
这些值实际上是在编辑器按下保存按钮时设置的,但我们希望页面 (1) 上的列表在编辑器按下确定按钮 (4) 时立即反映设置的项目,即之前必须实际保存整个项目。
我们如何做到这一点?
(我正在与 Sitecore 支持人员联系,但到目前为止我还没有得到任何答复...)
更新 经过与支持人员的大量对话,我们仍然没有任何有用的解决方案。
我们尝试将其变成显示链接的字段渲染器。 有效的是:
- 当您在弹出字段编辑器中编辑该字段时,该字段会得到更新。 (但是...)
- 第一次加载页面时看起来不错。
- 您可以使用命令创建一个 WebEdit 按钮来编辑字段并将其作为自定义按钮添加到该字段(注册
<command name="webedit:fieldeditor" type="Sitecore.Shell.Applications.WebEdit.Commands.FieldEditor, Sitecore.Client"/>并将单击按钮设置为webedit:fieldeditor(command={3473DDA1-2983-493C-AF7A-054C75AA7AD3},fields=NameOfField,其中 guid 指向 itelf 和一个“图标”设置在上面。)
没用的是:
- 该字段由原始值更新,而不是我想要显示的内容。涉及服务器代码,但不涉及 html 代码的呈现。
- 当我想在字段编辑器中编辑值时,发送到字段编辑器的值不是原始值,而是页面上实际显示的值。 (我想这可以通过某种方式解决)
支持的问题变成了一个功能请求,让服务器参与渲染该字段,而不仅仅是向更新它的 JavaScript 发送一个新值。服务器进行第一次渲染,因此当它已经参与更新时,也应该允许它在以下时间进行渲染。
我们决定现在不花更多时间在这方面(我们还有其他事情要做。)并且编辑器体验不佳,因为在编辑器实际保存项目之前不会更新字段。
对于这个问题,我们仍然没有合适的解决方案。如果您想继续研究它并想要参考我的问题,那就是 439059。
【问题讨论】:
-
一般来说,Sitecore 支持团队只会在您的工单未 100% 完成时要求您填写其他信息。我在支持部门的经验是,他们(当信息完整时)总是会为您提供合适的解决方案/解决方案来解决您的问题。
-
是的,@Younes,大多数情况下,sitecore 支持都给出了很好的答案,但在这个问题上,有几个误解(我的和他们的错)让我脾气暴躁。 ;-) 所以我想我会让 stackoverflow 社区有机会更好/更快地给出答案。当我得到答案时,更多的人应该能够阅读它。
标签: sitecore sitecore-mvc sitecore8