【发布时间】:2012-09-29 06:08:10
【问题描述】:
有人知道如何从 MongoDb 集合中填充下拉列表吗?我如何访问 MongoId 对象。我正在使用带有 YiiMongoDbSuite 扩展的 Yii 框架。
【问题讨论】:
标签: mongodb drop-down-menu yii mongoid populate
有人知道如何从 MongoDb 集合中填充下拉列表吗?我如何访问 MongoId 对象。我正在使用带有 YiiMongoDbSuite 扩展的 Yii 框架。
【问题讨论】:
标签: mongodb drop-down-menu yii mongoid populate
我相信 YiiMongoDbSuite 返回 CActiveRecord 类型的活动记录。
_id 只是该类的一个属性:
$m = $v->_id
将使$m 等于该记录或活动记录类的_id。
上面的代码可能会返回一个MongoId 对象,这可能是您遇到的问题,在这种情况下,您只需这样做:
$m = (string)$v->_id
获取MongoId对象的字符串表示。
【讨论】:
$list = CHtml::listData($industryModels, '_id', 'name'); 怎么样,因为listData 方法应该通过字符串获取_id
chtml::value 不提供对象形成的模型属性。我认为您将不得不手动执行此操作并建立一个 _ids 数组,然后将其推送到 listData 字段中。另一种选择是创建一个get_id 函数将其作为字符串返回,但我不确定这会对模型的一般保存产生什么影响。