【问题标题】:Is there a method to select or create options for dropdown in OctoberCMS backend forms?有没有一种方法可以在 OctoberCMS 后端表单中选择或创建下拉选项?
【发布时间】:2020-03-03 21:25:27
【问题描述】:

我想创建一个类别字段,用户可以在其中选择一个已输入的唯一值或创建自己的唯一类别。在 OctoberCMS 中有什么方法可以做到这一点吗?我浏览了表单字段类型并检查了下拉选项。但是什么也找不到。至少有任何插件可以做到这一点吗?

【问题讨论】:

  • @HardikSatasiya 是的,我说的是组合框。有什么方法可以将onKeydown 事件挂钩到默认下拉框?
  • 您应该构建自己的表单小部件,因为不鼓励在当前小部件中进行挂钩事件,并且似乎不稳定。 octobercms.com/docs/backend/widgets#form-class-definition

标签: backend octobercms octobercms-backend octobercms-widgets


【解决方案1】:

尝试在字段定义中添加“数据标签”Select2(下拉)属性:

category: 
    type: dropdown
    attributes:
        data-tags: true

还在相关模型中定义收集类别值的方法:

public function getCategoryOptions($keyValue = null)
{
    $optList = Category::orderBy('title')->get()->lists('title', 'title');
    if (!is_null($keyValue))
    {
        $optList = [$keyValue => $keyValue] + $optList;
    }
    return $optList;
}

【讨论】:

  • 这并不能解决我的问题,因为我只需要唯一值作为建议。但实际值应该是一个字符串,每个项目只有一个类别。
  • 所以,这不是关于类别枢轴关系,而是纯粹的字符串属性,能够从选择组合中即时添加它?
  • 是的,这就是我想要的。同桌无支点
  • 好的,用一个聪明的解决方法编辑了答案...... :)
猜你喜欢
  • 2010-09-20
  • 1970-01-01
  • 2019-02-26
  • 1970-01-01
  • 2021-10-30
  • 2012-09-21
  • 1970-01-01
  • 1970-01-01
  • 2021-07-17
相关资源
最近更新 更多