10月CMS创建一个多选表单字段

编程入门 行业动态 更新时间:2024-10-21 22:52:09
本文介绍了10月CMS创建一个多选表单字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我需要在10月份的Cms后端表单(fields.yaml)中创建一个多选表单字段。我申请了以下方法:

select_field: label:Sample 类型:dropdown 属性:{multiple:'multiple'}

这个字段的选项将从模型中调用

一切正常,但是当我提交表单时,只有第一个选中的选项被插入为数据库表文本字段中的JSON数据。我希望每个选定的选项都被存储。我也已经声明这个字段在模型中是Jsonable,例如,protected $ jsonable = ['field_name'];

注意:当我使用类型 checkboxlist 时,它按照我的想法工作,但我不想要成为checkboxlist。我是新来的十月cms是否有任何简单的方法..

解决方案

你不能使用具有多个值的下拉字段因为它是为了处理单一的价值。作为复选框和广播这就是为什么有checkboxList(我猜)。

但我找到了一个解决方案。 在fields.yaml中使用partial作为字段类型,而不是下拉菜单

octobercms/docs/backend/forms#field-partial

创建一个部分(注意名称属性中的[]这就是它工作的原因!)

但请注意,这只是一个窍门,您只能使用直接yaml选项分配 octobercms/docs/backend/

<?php $ fieldOptions = $ field-> options (); //将字段值作为数组获取 $ selectedValues =(array)$ field-> value; ?> <! - 下拉菜单 - > <?php if($ this-> previewMode):?> < div class =form-control><?=(isset($ fieldOptions [$ field-> value]))? e(trans($ fieldOptions [$ field-> value])):''?>< / div> <?php else:?>
评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!