gpt4 book ai didi

symfony1 - 如何在管理生成器中将 sfWidgetFormDoctrineChoice 设为 "order by"

转载 作者:行者123 更新时间:2023-12-03 06:25:13 26 4
gpt4 key购买 nike

我正在使用 Symfony 1.4 和 Doctrine。

假设我有 2 个类别:品牌和产品。

当我在基于管理生成器的管理中创建新产品时,我想从下拉列表中选择一个品牌。管理生成器正在为我做这件事,自动创建一个 sfWidgetFormDoctrineChoice

问题是品牌是按 id 排序的。我希望它们按“标签”字段排序。

为了做到这一点,我在我的 ProductForm 类中执行了以下操作:

$this->widgetSchema['brand_id']->addOption('order_by','label');

但我收到以下错误:

Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a' at line 1. Failing Query: "SELECT b.id AS b__id, b.external_id AS b__external_id, b.label AS b__label, b.created_at AS b__created_at, b.updated_at AS b__updated_at FROM brand b ORDER BY l a"

order by 语句真的很奇怪。我不明白为什么它似乎削减了 order by 语句的名称。

编辑:显然“order_by”选项需要一个数组作为第二个参数。它期望什么值?

最佳答案

我没有尝试本伦利的解决方案,因为当我找到我的解决方案时他回答正确。这似乎比我最后做的事情更乏味。

我查看了源代码以了解这一切是如何工作的。事实证明,“order_by”选项需要一个数组来指定要对结果进行排序的字段以及“asc”或“desc”:

$this->widgetSchema['product_id']->addOption('order_by',array('label','asc'));

它就像一个魅力。

关于symfony1 - 如何在管理生成器中将 sfWidgetFormDoctrineChoice 设为 "order by",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2280689/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com