java - Liferay 6.0 使用 java 控制器从 db 获取 WebForm-portlet 数据
问题描述
我使用了一些 webform portlet,例如询问用户在网站上的体验是否良好。现在我需要获取 Web 表单值并创建一个表格来显示它们。我知道数据存储在 Exapando 的 liferay 数据库中(表、ros、列、值)。问题是我找不到网络表单名称。在 Expandotable 中,它的存储方式类似1_WAR_webformportlet_INSTANCE_...
,但我想要出现在浏览器中的名称(例如“MY FORM”)。
希望有人可以帮助我...
PS:我在 JAVA 中使用 ExpandoTableLocalServiceUtil。
解决方案
Expando API 模拟表格,您可以找到Expando*
提取正确数据所需的各种其他 API 类。这不是对数据运行报告的最直观的方式,因为它主要是为存储现有实体的额外值而构建的。
话虽如此,一旦您从ExpandoTable
您选择的 id 中获得了正确的 id,您就可以查询ExpandoColumn
和ExpandoRow
API,然后通过ExpandoValue
API(添加LocalServiceUtil
到所有)来获取正确的值。
然后,当然,您需要在 HTML 输出中呈现这些值。
Web 表单也可以导出为 CSV,您可以使用该输出,或者您可以查看该代码,因为它还读取表单的所有数据。
我不能没有:您提到 Liferay 6.0 并标记 Liferay 6.2。两者都非常过时 - 请在面向公众的网站上运行更多最新软件。
推荐阅读
- excel - Excel:最多运行两行,或者只在一行中返回值
- neo4j - Neo4J Community 4.1.6 启动后停止
- r - Xgboost:使用单一测试观察?
- unit-testing - 如何在单元测试 Dart 中不调用另一个函数内部的函数?
- actions-on-google - 当我使用 Nest Hub Max 进入房间时控制我的智能家居设备
- python - 无法运行任何脚本、Traceback、FileNotFoundError:[Errno 2]
- lua - LOVE2D 中的基本退出函数
- r - 如何有条件地在行上创建计数器?R
- mysql - msql 密码 chancing_sha2_password 插件
- snowflake-cloud-data-platform - 253006(不适用):文件不存在: