苏鲁CMS 2.0:如何在类别选择中使用jexl

  • 本文关键字:选择 jexl CMS 苏鲁 sulu
  • 更新时间 :
  • 英文 :


是否有一些关于如何为category_selection内容类型编写jexl的文档?当前的2.0文档在这个主题中有点单薄。

我盲目尝试:

<property name="authors" type="category_selection">
<meta>
<title lang="de">Autor</title>
<title lang="en">Author</title>
</meta>
<params>
<param name="item_disabled_condition" value="parent.key == 'authors'"/>
</params>
</property>

但它甚至没有抛出错误;(。

我试图做的是,只允许选择某个子类别的孩子。

您做得几乎正确,唯一的问题是可用值正是API返回的值。在类别的情况下,parent键指的是父项的ID。您不会因为可以访问数字的key属性而出现错误,唯一的问题是它将是undefined

所以你可以做以下事情:

<property name="authors" type="category_selection">
<meta>
<title lang="de">Autor</title>
<title lang="en">Author</title>
</meta>
<params>
<param name="item_disabled_condition" value="parent == 1"/>
</params>
</property>

我知道这不是很好,因为你必须将数据库ID放入配置中,但这是我认为目前唯一有效的方法。。。如果parent.key应该工作,我们将不得不调整API。

当前/admin/api/categories返回的一个类别json如下所示:

{
"name": "Cat Name", // name in the selected language
"id": 6,
"depth": 2, // depth in the tree
"parent": 2, // id of the parent
"locale": "de",
"defaultLocale": "de",
"lft": 5,
"rgt": 6,
"hasChildren": false
}

最新更新