diff --git a/README.md b/README.md index 264e30bb0..cc53813b2 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,41 @@ # Django MongoDB Backend -## Index -* [Documentation](https://www.mongodb.com/docs/languages/python/django-mongodb/current/) -* [Getting Started](https://www.mongodb.com/docs/languages/python/django-mongodb/current/get-started/) -* [Model Your Data](https://www.mongodb.com/docs/languages/python/django-mongodb/current/model-data/) -* [Limitations & Future Work](https://www.mongodb.com/docs/languages/python/django-mongodb/current/limitations-upcoming/) +## Documentation -The documentation in the "docs" directory is online at +Documentation written in the style of MongoDB's documentation is available at +https://www.mongodb.com/docs/languages/python/django-mongodb/current/. + +Documentation written in the style of Django's documentation is available at https://django-mongodb-backend.readthedocs.io/en/latest/. -## Install +## Quick Start + +### Install Use the version of `django-mongodb-backend` that corresponds to your version of Django. For example, to get the latest compatible release for Django 5.2.x: + ```bash pip install django-mongodb-backend==5.2.* ``` -## Quickstart - -### Start project +### Create a project From your shell, run the following command to create a new Django project -called `example` using our custom template. Make sure the zipfile referenced -at the end of the template link corresponds to your version of Django. +called `example` using our project template. Make sure the end of the template +URL corresponds to your version of Django (e.g. `5.2.x.zip` for any Django +5.2.x version). -You can check what version of Django you're using with: ```bash -django-admin --version +django-admin startproject example --template https://github.com/mongodb-labs/django-mongodb-project/archive/refs/heads/5.2.x.zip ``` -The snippet below specifies `5.2.x.zip` at the end of -the template url to get the template for any Django version matching 5.2: +You can check what version of Django you're using with: ```bash -django-admin startproject example --template https://github.com/mongodb-labs/django-mongodb-project/archive/refs/heads/5.2.x.zip +django-admin --version ``` - ### Connect to the database Navigate to your `example/settings.py` file and replace the `DATABASES` @@ -54,49 +52,33 @@ DATABASES = { ``` ### Run the server -To verify that you installed Django MongoDB Backend and correctly configured your project, run the following command from your project root: + +To verify that you correctly configured your project, run the following command +from your project root: + ```bash python manage.py runserver ``` -Then, visit http://127.0.0.1:8000/. This page displays a "Congratulations!" message and an image of a rocket. - - -## Capabilities of Django MongoDB Backend -- **Model MongoDB Documents Through Django’s ORM** +Then, visit http://127.0.0.1:8000/. This page displays a "Congratulations!" +message and an image of a rocket. - - Store Django model instances as MongoDB documents. - - Maps Django's built-in fields to MongoDB data types. - - Provides custom fields for arrays (`ArrayField`) and embedded documents (`EmbeddedModelField`). - - Supports core migration functionalities. -- **Index Management** - - Create single, compound, partial, and unique indexes using Django Indexes. -- **Querying Data** - - Supports most of the Django QuerySet API. - - Supports relational field usage and executes `JOIN` operations with MQL. - - A custom `QuerySet.raw_aggregate` method exposes MongoDB-specific operations like Vector Search, Atlas Search, and GeoSpatial querying to yield Django QuerySet results. -- **Administrator Dashboard & Authentication** - - Manage your data in Django’s admin site. - - Fully integrated with Django's authentication framework. - - Supports native user management features like creating users and session management. +## Getting Help +You can ask usage questions on the [MongoDB Community Forums](https://www.mongodb.com/community/forums/tag/python). -### Issues & Help +## Reporting Bugs and Requesting Features -We're glad to have such a vibrant community of users of Django MongoDB Backend. -You can ask questions and request features through the -[MongoDB Community Forums](https://www.mongodb.com/community/forums/tag/python). - - -#### Bugs / Feature Requests -To report a bug or to request a new feature in Django MongoDB Backend, please open an issue in JIRA, our issue-management tool, using the following steps: +To report a bug or request a new feature in Django MongoDB Backend, please open +an issue in JIRA: 1. [Create a JIRA account.](https://jira.mongodb.org/) - 2. Navigate to the [Python Integrations project](https://jira.mongodb.org/projects/INTPYTHON/). +3. Click **Create Issue**. Please provide as much information as possible about +the issue and the steps to reproduce it. -3. Click **Create Issue**. Please provide as much information as possible about the issue and the steps to reproduce it. - -Bug reports in JIRA for the Django MongoDB Backend project can be viewed by everyone. +Bug reports for the Django MongoDB Backend project can be viewed by everyone. -If you identify a security vulnerability in the driver or in any other MongoDB project, please report it according to the instructions found in [Create a Vulnerability Report](https://www.mongodb.com/docs/manual/tutorial/create-a-vulnerability-report/). +If you identify a security vulnerability in this project or in any other +MongoDB project, please report it according to the instructions found at +[Create a Vulnerability Report](https://www.mongodb.com/docs/manual/tutorial/create-a-vulnerability-report/).