我想创建一个 Liferay 网页内容,它将显示多个状态的选择框。
我在结构中创建了一个选择字段来显示状态,并提供了多个选项,例如旁遮普、卡纳塔克邦、喀拉尔……
现在我想在模板中访问这些选择字段选项。
谁能告诉我如何访问模板中的选择字段及其选项?
提前致谢 :)
我想创建一个 Liferay 网页内容,它将显示多个状态的选择框。
我在结构中创建了一个选择字段来显示状态,并提供了多个选项,例如旁遮普、卡纳塔克邦、喀拉尔……
现在我想在模板中访问这些选择字段选项。
谁能告诉我如何访问模板中的选择字段及其选项?
提前致谢 :)
正在读取您所要求的选定值吗?
对于select
name类型的字段selectionField
,只需调用getData()
以读取所选值(作为字符串)。
$selectionField.getData()
听起来您正在尝试使用 Web 内容构建 portlet 功能,这不是它的用途。
尽管如此:您可以通过以下方式访问该结构
#set($structureService = $serviceLocator.findService("com.liferay.portlet.dynamicdatamapping.service.DDMStructureLocalService"))
#set($structure = $structureService.fetchDDMStructureByUuidAndGroupId("THE-UUID-OF-YOUR-STRUCTURE", $articleGroupId))
该结构将包含您的字段的选项(请参阅 参考资料DDMStructure
)。
但是,如果您真的喜欢 Web 内容方法 - 我会将配置从结构移至 Web 内容文章:
在结构中创建一个可重复的文本字段,并在文章本身中添加您的状态(表单构建器方法)。然后,您可以为每篇文章简单地配置一组不同的选项。您可以使用模板中的选项:
<select name="...">
#foreach ($state in $yourStateFieldName.siblings)
<option value="$state">$state</option>
#end
</select>