我在Joomla上使用免费版Fabrik扩展。我的Joomla和Fabrik都是最新版本
我已经完成了Fabrik结构部分,例如创建表单、元素、组、列表,并设置表单顺序、验证、外观,并使它们全部工作。任何注册用户都可以使用表单提交数据,这些数据将被存储到数据库
的表中。在前端,这个想法是用户可以通过他/她的配置文件查看两个不同的列表视图模块,一个私有列表和一个公共列表
- 模块A只列出用户提交的条目。该列表显示了整个条目的数据
- 模块B列出每个人提交的所有条目。该列表仅显示来自每个条目 的选定字段的选定数据
这就是问题的来源。当我要为列表视图创建一个模块时(Fabrik list module)
模块管理器>新建> Fabrik列表模块>高级
在我设置标题和列表之后,当我单击属性"Elements"的"Select"按钮时,它只是响应我,就像我刚刚单击"Cancel"一样,并将我重定向到模块列表表。如果它只是一个未修复的错误,我无能为力,但我想它会更容易,如果我可以直接使用数据库admin
最后,经过一些hack,我成功地弄明白了。进入[pre]_menu。参数(用于菜单项)或[pre]_modules。内容(对于模块),您将看到如下的json
{"calculations":"0","listlayout":"bootstrap","resetfilters":"0","list_elements":"null", ....}
将list_elements的value从"null"替换为
"{"show_in_list":[...]}"
[…包含元素列表id(在表[pre]_fabrik_elements中),我们希望在模块视图中选择它们,例如[1,2,3,4,5]
更新:
直接在数据库上修改joomla数据是非常不实际的解决方案。实际上,特别是在类似的情况下(肯定这是一个bug),您可以通过简单地创建一个新的分隔列表来选择列表视图的元素,而不是在表单创建时默认生成的自动生成列表。
新列表将根据数据库表结构自动生成具有新ID的新元素集,并且它们不会与默认列表共享其设置。应该避免修改默认列表,因为它会完全改变表单
的行为。在新列表中,您可以简单地取消"在列表中显示"任何您不想显示的元素,并创建链接到新列表的菜单项或模块。如果您想要更改列表显示,例如更改列表头字段标题、更改列表描述或将其他元素连接到列表