Docs Menu
Docs Home
/ / /
Laravel MongoDB

Laravel Feature Compatibility

On this page

  • Overview
  • Database Features
  • Query Features
  • Pagination Features
  • Migration Features
  • Seeding Features
  • Eloquent Features
  • Eloquent Relationship Features
  • Eloquent Collection Features
  • Eloquent Mutator Features
  • Eloquent Model Factory Features

This guide describes the Laravel features that are supported by the Laravel MongoDB package. This page discusses Laravel version 11.x feature availability in Laravel MongoDB.

The following sections contain tables that describe whether individual features are available in Laravel MongoDB.

Eloquent Feature
Availability
Configuration
Read/Write Connections
Use read preference instead.
Multiple Database Connections
Listening for Query Events
Monitoring Cumulative Query Time
Transactions
Command Line Interface (CLI)
Use the MongoDB Shell (mongosh).
Database Inspection
Unsupported
Database Monitoring
Unsupported

The following Eloquent methods are not supported in Laravel MongoDB:

  • toSql()

  • toRawSql()

  • whereColumn()

  • orWhereColumn()

  • whereFulltext()

  • groupByRaw()

  • orderByRaw()

  • inRandomOrder()

  • union()

  • unionAll()

  • havingRaw()

  • having()

  • havingBetween()

  • orHavingRaw()

  • whereIntegerInRaw()

  • orWhereIntegerInRaw()

  • whereIntegerNotInRaw()

  • orWhereIntegerNotInRaw()

Eloquent Feature
Availability
Running Queries
Chunking Results
Aggregates
Select Statements
Raw Expressions
Unsupported
Joins
Unsupported
Unions
Unsupported
Logical Grouping
Unsupported
Ordering
Random Ordering
Unsupported
Grouping
Partially supported, use Aggregations.
Limit and Offset
Conditional Clauses
Insert Statements
Auto-Incrementing IDs
Unsupported as MongoDB uses ObjectIDs
Upserts
Unsupported
Update Statements
Updating JSON Columns
Unsupported
Increment and Decrement Values
Debugging

Laravel MongoDB supports all Laravel pagination features.

Laravel MongoDB supports all Laravel migration features, but the implementation is specific to MongoDB's schemaless model.

Laravel MongoDB supports all Laravel seeding features.

Eloquent Feature
Availability
Models
UUID and ULID Keys
Timestamps
Retrieving Models
Advanced Subqueries
Unsupported
Retrieving or Creating Models
Retrieving Aggregates
Partially supported
Inserting and Updating Models
Upserts
Unsupported, but you can use the createOneOrFirst() method
Deleting Models
Soft Deleting
Pruning Models

Tip

To learn more, see the Eloquent Model Class guide.

Eloquent Feature
Availability
Defining Relationships
Many-to-Many Relationships
Polymorphic Relationships
Dynamic Relationships
Querying Relations
Aggregating Related Models
Unsupported
Inserting and Updating Related Models

Tip

To learn more, see the Eloquent Model Relationships guide.

Laravel MongoDB supports all Eloquent collection features.

Eloquent Feature
Availability
Casts
Array and JSON Casting
✓ You can store objects and arrays in MongoDB without serializing to JSON.
Date Casting
Enum Casting
Encrypted Casting
Custom Casts

Tip

To learn more, see the Eloquent Model Class guide.

Laravel MongoDB supports all Eloquent factory features.

← Issues & Help