Laravel 5.2 Update MySQL Database from MongoDB JSON Response


Laravel 5.2 Update MySQL Database from MongoDB JSON Response

如何从MongoDB中提取的数据更新MySQL数据库中的表?

我有一个从MongoDB中提取数据的函数

$recordid = '9depnuDz1XHl';
$mongodata = MongoDataPull::find($recordid);

当我运行以下内容时:

return [$mongodata];

这是我得到的回应:

[
    {
        "_id": "9depnuDz1XHl",
        "name": "Elliot",
        "surname": "Alderson",
        "email": "elliot@fsociety.com",
        "cell": "01239871234",
        "client": false,
        "payment": false,
        "user_id": "EVhTgHsh1H0A",
        "theme": "default"
    }
]

我在 MySQL 中的列名与响应中的列名略有不同。

表中的 MySQL 列:

fname
lname
email
phone
client
payment
userid
theme
使用

Eloquent,我将如何编写查询以使用MongoDB中的数据更新MySQL,同时映射到正确的列?

如果使用 fill() ,请确保模型上有$guarded$fillable。此外,仅当这是主 ID 时,find()才有效。否则,请使用where('primary_key', "=", $mongodata->_id)->first();

$MysqlModel = Model::find($mongodata->_id);
$MysqlModel->fill(['fname' => $mongodata->name, etc...]);
$MysqlModel->save();