0

私は と が初めてでNoSQL、である別のフィールドMongoDBに しようとしています。$pusharrayarray

私はpush $dynamicInfo自分のユーザーprofile.weightTrackerにアクセスしようとしています。これにより、ページを更新したりスクリプトを実行したりするたびに現在のコードにプッシュすることはできませんが、代わりに現在のコードを再書き込みnew arrayweightTrackerますpusharraynew array

誰かが私が間違っていることを指摘できますか?

前もって感謝します。

$dynamicInfo['currentWeight'] = '83';

$user = $this->db()->users;

// Deals with the static info that just need an update
if ( empty( $staticInfo ) == false ) {
    $user->update(
        array('_id' => new MongoId( $userId ) ),
        array('$set' => array('profile' => $staticInfo) ),
        array('upsert' => True)
    );
}

// Deals with the dynamic info that needs to be inserted as array
if ( empty( $dynamicInfo ) == false ) {
    //$dynamicInfo['inserted_on'] = new MongoDate();
    $user->update(
        array('_id' => new MongoId( $userId ) ),
        array('$push' => array('profile.weightTracker' => $dynamicInfo ) ),
        array('safe' => True)
    );
}

ここに画像の説明を入力

4

1 に答える 1