Symfony 2 - 表单实体类型:如何格式化生成的下拉列表?

2023-11-30

我有一个表单,显示可供选择的类别下拉菜单。

这些类别是使用 Gedmo Tree Extension 设置的,因此一个类别可以有子类别。

我在表单生成器中有一个自定义查询,它仅选择属于特定组的类别。但是,我需要能够在下拉列表中显示哪些类别是父母,哪些是孩子,例如

Parent Category 1
  -- Child Category A
  -- Child Category B
Parent Category2
  -- Child Category C

知道我该如何实现这一目标吗?

另外,如何从调用 formtype 的控制器将变量传递给我的 query_builder?


如果您不需要选择父级,则可以使用 optgroup 标签

<select>
    <optgroup label="Category 1">
        <option>Option 1...</option>
        <option>Option 2...</option>
        <option>Option 3...</option>
    </optgroup>
    <optgroup label="Category 2">
        <option>Option 1...</option>
        <option>Option 2...</option>
        <option>Option 3...</option>
    </optgroup>
</select>

Edit:

Symfony 2 支持带有数组的 optgroup 标签(未经测试,可能有错误):

public function buildForm(FormBuilder $builder, array $options)
{
    $category_choices = array(
        array('Category 1' => array(
            '1' => 'Option 1...',
            '2' => 'Option 2...',
            '3' => 'Option 3...'
        )),
        array('Category 2' => array(
            '4' => 'Option 4...',
            '5' => 'Option 5...'
        ))
    );

    $builder->add('category_list', 'choice', array(
        'label' => 'Category',
        'choices' => $category_choices
    ));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Symfony 2 - 表单实体类型:如何格式化生成的下拉列表? 的相关文章

  • PHP 中的随机排列对象

    如何在 PHP 中对对象进行排序 我试过shuffle 但这需要一个数组 Warning shuffle expects parameter 1 to be array object given in var www index php o
  • PHP:系统时区设置错误

    我尝试在 MAMP 下的终端中使用 PHP 但出现与系统时区设置相关的错误 我该如何修复这个错误 应用程序 MAMP bin php5 bin php 回声 php PHP 严格标准 PHP 启动 它 依赖系统是不安全的 时区设置 请使用
  • 是否可以倒回 PDO 结果?

    我正在尝试为 PDO 语句的结果编写一个迭代器 但找不到任何回退到第一行的方法 我想避免调用 fetchAll 和存储所有结果数据的开销 first loop works fine foreach statement as result d
  • Laravel 5 中的两个登录表单

    我一直想知道如何在 laravel 5 中制作两个登录表单一段时间 原因是因为我有一个多站点项目 我在一个项目中拥有管理站点和公共站点 我对路由进行了分组 以便管理路由回答一个域 公共路由回答另一个域 如下所示 Route group ar
  • 允许跨域ajax请求

    在我的项目中 我需要允许其他人向我的脚本发送 ajax 请求 因此 外部请求可能来自其他网站和域 也可能来自浏览器扩展 我在脚本顶部简单地添加了这两行 让他们执行此操作 header Access Control Allow Origin
  • 我怎样才能让我的卷发在刮擦之前等待几秒钟?

    所以我试图从网站上抓取一些数据 有一些必须被删除的名字列表 发生的情况是 如果有 15 个名字需要被删除 其中只有 5 个名字被删除 当我检查原始站点时 他们也以类似的方式加载数据 第一次加载网站时 仅显示五个名字 重新加载时会显示 10
  • PHP - 简单嵌套无序列表 (UL) 数组

    我在 stackoverflow 上看到了这个嵌套 UL 数组问题的一些变体 但我认为我的比其他问题更简单 我正在寻找一个简单的数组循环 它允许无限量的主题 父项 和无限量的项目 子项 例如 ul li Topic li ul li Ite
  • PHP“按引用分配”的奇怪现象

    我发现了一个代码片段 其中包括 a b 但没有测试 b 是否确实存在 if isset b 我不确定 PHP 是如何处理这个问题的 所以我进行了一个快速的裸测试 现在我更加感兴趣了 a array a gt b x gt y b array
  • 如果 Woocommerce 单一产品中的库存数量少于 10,请在库存数量旁边添加文本

    我发现这是作为另一个线程的评论发布的 但我不知道应该用它做什么 if product gt get stock quantity lt 10 echo Limited supply left 我想它应该有一个钩子 我试过woocommerc
  • 如何将这种奇怪的字符串解码为UTF-8? (PHP)

    所以我有 u041E u043B u0435 u0433 20 u042F u043A如何将其保存为真正的 UTF 8 或 对我来说更好的是 HTML 实体 这就是 JavaScriptescape 格式 它与 URL 编码类似 但不兼容
  • 正则表达式多次匹配多行

    我有一个像这样的字符串 Name John Doe Age 23 Primary Language English Description This is a multiline description field that I want
  • 如何在 dompdf 库上启用调试?

    我正在使用 dompdf 库来输出一些报告 我得到了一个文件输出 但我有一些奇怪的行为 如何启用调试报告dompdf https github com dompdf dompdf dompdf new Dompdf something li
  • Laravel Factory:手动增量列

    对于以下工厂定义 该列order需要按顺序进行 已经有专栏了id即自动递增 第一行的order应该开始于1以及每个附加行的order应该是下一个数字 1 2 3 etc factory gt define App AliasCommand
  • 仅当客户尚未使用优惠券时,才将优惠券添加到处理订单电子邮件中

    我发现了这个片段 它在订单邮件中添加了优惠券 我想仅当客户未使用任何优惠券时才将其显示在处理订单邮件中 add action woocommerce email before order table add content 20 funct
  • PHP Remedy API 调用创建带有附件的条目不起作用(使用 Postman Works!)

    当我尝试创建带有 PDF 附件的条目时 我已经为此工作了好几天 但没有成功 使用补救 REST API 我每次都会收到超时错误 500 或错误请求 这是文档 https docs bmc com docs ars2002 example o
  • PHP curl 获取标头参数

    我将curl 与PHP 结合使用来获取API 调用的标头响应 这是我的代码 curl curl init curl setopt curl CURLOPT URL http localapi com v1 users curl setopt
  • UNION SELECT - 循环?还是单个查询?

    如果我使用 UNION 从数据库中进行多个 SELECT 是否被视为一个查询 或多个查询 SELECT column name s FROM table1 UNION SELECT column name s FROM table2 这是否
  • 如何获得DiVs等级?

    html div class div class p strong span style color FF0000 Content1 span strong p p style text align center Content2 img
  • 重定向至 2 页

    我有一个 PHP 页面 我想先将其重定向到一个页面 例如 google com 然后再重定向到另一个页面 例如 bing com 为此 我使用以下方法 header Location http google com header Locat
  • 当我在对象上调用函数时,为什么会在非对象上出现此函数调用错误? [复制]

    这个问题在这里已经有答案了 Error 致命错误 调用成员函数 中的非对象上的bind param var www web55 web pdftest events php 76号线 Code public function countDa

随机推荐

  • 选择 Linq 分组依据的特定列

    我有一个嵌套的 ListView 有点像这个 http mattberseth com blog 2008 01 building a grouping grid with html 以及以下 Linq 查询 var query from
  • PHP foreach() 仅返回最后 50 项

    我当前正在使用以下 PHP 代码来返回 htm 文件的输出并对其进行格式化
  • 我可以从 .gradle 文件中的 groovy 方法调用 gradle 任务吗?

    我在 gradle 中有一个非常规的构建脚本 它可以循环编译项目 更改为标准 gradle 构建需要几周的时间 所以现在不会发生这种情况 问题是我想停止在脚本中使用 ant 并转而仅使用 groovy gradle 问题是如何更改复制等任务
  • 使用 VBA for Excel 从大范围单元格中删除“额外”空格(超过 1 个)的更快方法

    如何从包含文本字符串的大范围单元格中更快地删除多余空格 假设有 5000 个细胞 我尝试过的一些方法包括 For Each c In range c Value Trim c Value Next c and For Each c In r
  • 你会如何解析 Markdown? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 编辑 我最近了解了一个名为
  • C# 停止执行直到事件发生

    我需要停止执行程序 直到用户单击按钮 我正在进行离散事件模拟 现在的目标是提供简单的图形来说明情况 当模拟达到值得展示的事件时 将调用绘制情况的方法 我需要该方法在用户单击按钮之前不跳回到模拟核心 只有在到达有趣的点时才再次调用 您可以创建
  • ANTLR 中的浮点文字和范围参数

    我正在开发 D 语言的解析器 当我尝试添加 切片 运算符规则时遇到了麻烦 你可以找到它的ANTLR语法here 基本上问题是 如果词法分析器遇到这样的字符串 1 2 它就会完全丢失 并且最终成为单个浮点值 因此像 a 10 这样的字符串的后
  • 对现有文件多次运行 blob 存储触发器

    我一直在使用一种方法 通过进入我的存储帐户并删除 azure webjobs host gt blobreceipts gt 函数应用程序名称 中找到的 blob 对相同文件多次运行存储触发器 gt Blob 触发器名称 我认为这就是我需要
  • 从 YouTube 数据 API 搜索查询中排除直播活动

    我正在使用 google api php client https github com google google api php client 仅搜索和检索 YouTube 上的视频 我知道您可以将名为 type 的查询标记设置为视频
  • “运算符不存在:整数=?”使用 Postgres 时

    我有一个简单的 SQL 查询 在 go 的 database sql 包提供的 QueryRow 方法中调用 import github com codegangsta martini github com martini contrib
  • 场景和步骤“获取最后更改”问题

    我有下表抽象了一些场景及其步骤 按 START DATE desc 排序 SCENARIO KEY STEP KEY START DATE END DATE PREVIOUS SCENARIO KEY PREVIOUS STEP KEY 1
  • 如何使用java流从网络获取PDF文件

    例如 我需要从网络下载 PDF 文件http www math uni goettingen de zirkel loesungen blatt15 loes15 pdf这个链接 我必须使用 Streams 来做到这一点 对于图像 它对我来
  • 根据角色显示不同的视图控制器-Firebase、Swift 3

    我正在构建一个非常简单的应用程序 它将用户的报告发送给管理员 到目前为止我已经完成了整个前端 我的菜单可以正常工作 报告顺序也很流畅 现在是我负责后端的时候了 我是一名新的 Swift 开发人员 完全自学 就像你应该的那样 但我对一些事情感
  • BLE 广告 RawData - 如何解码?

    我有一个连接到网关的 E66 健身手环 该手环确实连接到网关 并且我通过 MQTT 接收数据 但我不确定如何解码 RawData 格式 有人可以帮助我吗 谢谢 TimeStamp 2020 05 30 16 44 32 DataFormat
  • 为什么 cpu 性能计数器一直报告 0% cpu 使用率?

    PerformanceCounter cpuload new PerformanceCounter cpuload CategoryName Processor cpuload CounterName Processor Time cpul
  • 使用 ArrayAdapter 在自定义列表视图中滚动时微调器重置值

    我是 android 初学者 我需要你的帮助 在我的应用程序中 我使用自定义适配器和自定义行布局创建了一个列表视图 我成功地做到了这一点 并且我在所有行中添加了一张图像 文本视图和一个旋转下拉菜单 下拉列表中有项目数量 例如从 0 到 9
  • 在循环内定义的Java变量在循环外似乎无法被识别?

    我有一段代码令我困惑 我在 if else 语句内定义了一个整数数组 因为数组的长度取决于该方法的 2 个输入的长度 我的问题是 在 if else 语句之外 变量定义似乎丢失了 import java util Arrays public
  • 嵌入式.mobileprovision 中的 ProvisionsAllDevices 与 ProvisionedDevices

    我最近收到了一个 ipa 文件形式的 ipad 应用程序 为了安装该应用程序 我将其重命名为 zip 并找出应用程序文件并使用 Iphone Configuration Utility 能够顺利地将其安装到我的 iPad 上 它是 iOS
  • 如何将一个字符串拆分为多个值?

    如何分割字符串 假设我有一个字符串 狗 猫 老鼠 鸟 我的实际目标是将这些动物中的每一个插入到列表框中 这样它们就会成为列表框中的项目 但我想如果我知道如何拆分字符串 我就知道如何插入这些项目 或者有谁知道更好的方法来做到这一点 我使用 a
  • Symfony 2 - 表单实体类型:如何格式化生成的下拉列表?

    我有一个表单 显示可供选择的类别下拉菜单 这些类别是使用 Gedmo Tree Extension 设置的 因此一个类别可以有子类别 我在表单生成器中有一个自定义查询 它仅选择属于特定组的类别 但是 我需要能够在下拉列表中显示哪些类别是父母