Yii2:如何使用mongodb更新记录

时间:2014-12-09 10:03:06

标签: mongodb yii2

我正在使用mongodb来更新记录。我正在获得团队名称和来自用户的描述&按照我在仪表板控制器中编写的代码在数据库中更新它

if ($model->load(Yii::$app->request->post()) && $model->validate()) {

    $username = Yii::$app->session['username'];

    $user = Yii::$app->mongodb->getCollection('teamdashboard');
    $record = $user->findOne(array('username'=>$username));

    $record['teams']['team_name']=$model->team_name;
    $record['teams']['team_description']=$model->team_description;
    $record['teams']['time_created']='';
    $record['teams']['team_updated']='';

    $record->save();

save()被调用时,它会显示Call to a member function save() on a non-object。我想在现有文档中插入新的团队数据。

我不能使用insert,因为我希望所有表单只添加到一个用户特定文档中。 Insert命令将在集合中插入新行。

yii2是否支持嵌入式对象映射&操作????

1 个答案:

答案 0 :(得分:0)

(我想知道同样的事情,对于任何想知道,看起来它没有得到官方支持)

Yii 2.0 docs声明:

  

此扩展程序不提供任何特殊的使用方法   嵌入式文件(子文件)。一般建议是避免   如果可能的话。

     

“Yii模型设计假设单个属性是标量。

自: https://github.com/yiisoft/yii2-mongodb#working-with-embedded-documents

我能够成功读取MongoDB中的项目,只需像常规数组那样预览变量。