Laravel 功能兼容性
在此页面上
Overview
本指南介绍了 Laravel MongoDB支持的 Laravel 功能。 本页讨论 Laravel 集成中 Laravel 版本11 .x功能的可用性。
以下部分包含的表格描述了 Laravel 集成中各个功能是否可用。
数据库功能
Eloquent 功能 | 可用性 |
---|---|
配置 | ✓ |
读/写连接 | 请改用读取偏好。 |
多个数据库连接 | ✓ |
监听查询事件 | ✓ |
监控累积查询时间 | ✓ |
事务 | ✓ 请参阅事务。 |
命令行界面 (CLI) | 使用MongoDB Shell ( mongosh )。 |
数据库检查 | 不支持 |
数据库监控 | 不支持 |
查询功能
Laravel 集成不支持以下 Eloquent 方法:
toSql()
toRawSql()
whereColumn()
orWhereColumn()
whereFulltext()
groupByRaw()
orderByRaw()
inRandomOrder()
union()
unionAll()
havingRaw()
having()
havingBetween()
orHavingRaw()
whereIntegerInRaw()
orWhereIntegerInRaw()
whereIntegerNotInRaw()
orWhereIntegerNotInRaw()
Eloquent 功能 | 可用性 |
---|---|
运行查询 | ✓ |
分块结果 | ✓ |
聚合 | ✓ |
Select 语句 | ✓ |
原始表达式 | 不支持 |
JOINs | 不支持 |
联合(Unions) | 不支持 |
✓ | |
✓ | |
逻辑分组 | ✓ |
✓ | |
不支持 | |
排序 | ✓ |
随机排序 | 不支持 |
分组 | 部分支持,请使用聚合。 |
限制和偏移 | ✓ |
条件子句 | ✓ |
插入语句 | ✓ |
自动递增 ID | 不受支持,因为 MongoDB 使用 ObjectID |
更新或插入 (upsert) | ✓ 请参阅更新或插入文档示例。 |
更新语句 | ✓ |
更新 JSON 列 | 不支持 |
递增和递减值 | ✓ |
调试 | ✓ |
分页功能
Laravel 集成支持所有 Laravel 分页功能。
迁移功能
Laravel 集成支持所有 Laravel迁移功能,但其实施特定于 MongoDB 的无模式模型。
播种功能
Laravel 集成支持所有 Laravel 播种功能。
Eloquent 功能
Eloquent 功能 | 可用性 |
---|---|
模型 | ✓ |
UUID 和 ULID 密钥 | ✓ |
时间戳 | ✓ |
检索模型 | ✓ |
高级子查询 | 不支持 |
检索或创建模型 | ✓ |
检索聚合 | 部分支持 |
插入和更新模型 | ✓ |
更新或插入 (upsert) | ✓ 请参阅在单个操作中更新或插入。 |
删除模型 | ✓ |
软删除 | ✓ |
修剪模型 | ✓ |
提示
要了解更多信息,请参阅Eloquent 模型类指南。
Eloquent 关系功能
Eloquent 功能 | 可用性 |
---|---|
定义关系 | ✓ |
多对多关系 | ✓ |
多态关系 | ✓ |
动态关系 | ✓ |
查询关系 | ✓ |
聚合相关模型 | 不支持 |
插入和更新相关模型 | ✓ |
提示
要了解更多信息,请参阅Eloquent 模型关系指南。
Eloquent 集合功能
Laravel 集成支持所有 Eloquent集合功能。
Eloquent Mutator 功能
Eloquent 功能 | 可用性 |
---|---|
类型转换 | ✓ |
数组和 JSON 转换 | ✓ 您可以在 MongoDB 中存储对象和数组,而无需序列化为 JSON。 |
日期转换 | ✓ |
枚举类型转换 | ✓ |
加密转换 | ✓ |
自定义转换 | ✓ |
提示
要了解更多信息,请参阅Eloquent 模型类指南。
Eloquent 模型工厂功能
Laravel 集成支持所有 Eloquent 工厂功能。