sql >> データベース >  >> NoSQL >> MongoDB

オーバーロードされたプロパティApp\Dossier ::$programの間接的な変更は効果がありません

    問題は、$dossier->programを呼び出すことです。 Eloquentタイプのモデルで実際にプロパティに直接アクセスするのではなく、__getを呼び出します。 方法。

    そのgetメソッドは、プロパティへの参照を返しません。あなたがすべきことは、元のプロパティを取得し、それを変更してから元に戻すことです:

    $dossier=Dossier::where('_id',(int)$request->input('dossier_id'))->first();
    $originalProgram = $dossier->program;
    $originalProgram[$request->input('program')]['cities'][$request->input('city')]['services'][$request->input('service')][$request->input('name')]=$request->input('value');
    $dossier->program = $originalProgram;
    $dossier->save();
    



    1. MongoDBPHPドライバーとMongoDBの互換性チェック

    2. pymongo-mongodb + srv:// URIを使用するには、dnspythonモジュールをインストールする必要があります

    3. 負荷テスト中にMongoDBが応答しないのはなぜですか?

    4. MongoDBとSQLデータベースの違い