具有可变数量元素的内容类型

时间:2013-05-03 15:09:48

标签: plone dexterity

我已经将这个问题发布到了plone用户邮件列表中,所以我希望没有人会介意,特别是因为它没有隐藏。

由于我的问题难以置于一般性问题中,我将尝试用一个(希望)说明性的例子来解释它。请耐心等待。

  • 内容类型:产品

    每个产品应有几个解释部分,标题和富文本作为部分内容。所述标题应该是从预定义的标题(由编辑)收听或自由输入一次(例外)。

由于该网站将使用Dexterity并需要多语言方法(plone.app.multilingual),因此集中标题会使翻译人员感到头疼并避免不必要的重复。一般来说,样式是通过Diazo完成的,因此这些部分将映射到一个漂亮的小部件上。

我的问题是,如何将这个映射到Plone上,编辑和翻译的可用性以及软件堆栈的效率。

  • 方法1

    将标题放在隐藏文件夹中,并使用产品内容类型中的词汇表。同时使产品成为文件夹内容类型,并要求编辑者将每个部分作为单独的项目输入到所述文件夹中(例如,ProductSection非文件夹内容类型)。为每个产品重复该过程。但这似乎不是非常用户友好,并且imho不能很好地扩展产品和部分的数量。

  • 方法2

    我当然也可以将产品内容类型一般只减少到一个富文本字段,并让用户将每个部分作为带有标题和段落的div块输入。尽管这是实现这一目标的更简单方法,但它会给翻译人员(许多重复翻译)和编辑人员带来负担(例如,更改营销标题或其他内容,需要通过所有产品等手动更改)。

再次,请记住这是我的问题的一个说明性示例,这里产品真的是,来自公司的产品组合而不是Plone附加产品。 ;)

所以我的问题基本归结为:哪种方法听起来更合理?或者是否有更标准和/或创造性的方法来解决这个问题?

非常感谢您提前提出任何建议和帮助。非常感谢......

更新

我在plone用户列表上收到一个非常有启发性的答案后,我目前的想法(未经测试,头脑风暴)如下:

  • 产品将是自定义表单(由于MultiWidget,见下文)
  • 部分块将保存在Product对象的列表中(标题仅为选择字段)
  • 部分标题将保存在其他地方并通过不同方式进行管理(需要网站管理员访问,因此任何ZMI都是不可能的)
  • 通过z3c.form的MultiWidget轻松编辑(实际上这是关键因素)

如果这样做并且能与Dexterity和多语言很好地配合使用,我想这对所有参与者来说都是最佳解决方案。 当然,我会感谢任何和各种意见或建议。也许我现在完全走错了路,但根据我读到的内容,这应该可以正常工作。

0 个答案:

没有答案