我的数据库表名为“状态”,并且有一列名为“订单”的列,其类型为float.我正在尝试根据从低到大的顺序对状态字段进行排序,然后将这些字段输入到下拉列表中.这是我正在使用的代码:echo $form-dropDownListRow($my_...
我的数据库表名为“状态”,并且有一列名为“订单”的列,其类型为float.
我正在尝试根据从低到大的顺序对状态字段进行排序,然后将这些字段输入到下拉列表中.
这是我正在使用的代码:
echo $form->dropDownListRow($my_model, 'status', CHtml::listData(Status::model()->findAll(array('order'=>"'order' ASC")), 'id', 'name'), array('class'=>'span3','prompt'=>Yii::t('forms', 'Please Select A Status')));
但是列表始终按状态ID排序.我需要做一些类型转换吗?如果是这样,我将如何键入查询以使其按“ order”升序排序?
解决方法:
您没有正确指定订单:
array('order'=>"'order' ASC")
订单(列名)周围有多余的引号,这实际上意味着您根本没有排序.删除引号以解决此问题,但是将反引号放在其位置,因为order是MySql中的保留字:
array('order'=>"`order` ASC")
沃梦达教程
本文标题为:mysql-在Yii中排序CHtml :: listData下拉列表
猜你喜欢
- Ajax对xml信息的接收和处理操作实例分析 2023-02-23
- Ajax和跨域问题深入解析 2023-02-01
- cli生成vue3 2023-10-08
- vue中使用viewer.js 插件 2023-10-08
- 如何使用整个html表更新数据库(PHP,MySQL) 2023-10-26
- 基于HTML+JavaScript实现中国象棋 2022-08-31
- jQuery Ajax的readyState和status的区别和使用详解 2023-01-31
- 通过Ajax手动解决WordPress WP-PostViews不计数的问题 2022-12-15
- 【vue】v-for倒序显示/JSON数据倒序 2023-10-08
- HTML DOM setInterval和clearInterval方法案例详解 2022-11-20