文档菜单
文档首页
/ / /
Laravel MongoDB
/

将数据写入 MongoDB

1

替换store() 方法,位于 app/Http/Controllers 目录中的 MovieController.php 文件,以下代码

public function store(Request $request)
{
$data = $request->all();
$movie = new Movie();
$movie->fill($data);
$movie->save();
}
2

运行以下命令以生成API路由文件

php artisan install:api

提示

如果您正在使用Laravel 10.x,请跳过此步骤,因为命令生成的文件已存在。

导入控制器并在routes/api.php文件中添加调用store()方法的API路由

use App\Http\Controllers\MovieController;
// ...
Route::resource('movies', MovieController::class)->only([
'store'
]);
3

更新位于app/Models目录中的Movie模型,指定fill()方法填充的字段,如下所示

class Movie extends Model
{
protected $connection = 'mongodb';
protected $fillable = ['title', 'year', 'runtime', 'imdb', 'plot'];
}
4

创建一个名为movie.json的文件,并插入以下数据

{
"title": "The Laravel MongoDB Quick Start",
"year": 2024,
"runtime": 15,
"imdb": {
"rating": 9.5,
"votes": 1
},
"plot": "This movie entry was created by running through the Laravel MongoDB Quick Start tutorial."
}

通过在您的shell中运行以下命令,将JSON有效载荷作为POST请求发送到端点:

curl -H "Content-Type: application/json" --data @movie.json http://localhost:8000/api/movies
5

打开http://127.0.0.1:8000/browse_movies在您的网络浏览器中查看您提交的电影信息。插入的电影信息将显示在结果顶部。

注意

如果您遇到问题,请在MongoDB社区论坛寻求帮助或通过使用页面右侧或右下角的评分此页面选项卡提交反馈。

返回

查看MongoDB数据