-
Notifications
You must be signed in to change notification settings - Fork 27
Include FAQ to README #136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -101,6 +101,29 @@ from the new application's `apps.py` file. | |
Valid values for `verbosity` are `"queryPlanner"` (default), | ||
`"executionStats"`, and `"allPlansExecution"`. | ||
|
||
## Why are we building a MongoDB-Django integration? | ||
|
||
Building a robust solution that makes Django and NoSQL databases work together well has historically been challenging due to Django's ORM being built around relational database principles. While there have been several attempts in the past to create NoSQL (and MongoDB) integrations for Django, many of these projects have not achieved lasting success for various reasons. So, why have we chosen to tackle this problem now? | ||
|
||
According to the 2023 Django Developer Survey, 8% of respondents reported using MongoDB as a database backend with Django. This figure has shown a consistent upward trend in recent years (see 2021 and 2022 surveys). Additionally, numerous community members and customers have expressed a strong interest in leveraging Django alongside MongoDB. | ||
Our goal is to meet the needs of the developer community by providing an exceptional experience when working with MongoDB. Therefore, we are embarking on this journey to create a reliable integration. **Please note that the current project is in a very early stage of development and is not yet ready for PoC or Production use cases.** | ||
|
||
## Current capabilities | ||
|
||
At this stage, the project should let you replicate the djangoproject.com tutorial with minimal changes. You will likely be able to run it passing a portion of the standard Django test suite but not all of it. Some key features that we have added so far are: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This section is too vague to be useful. There are some parts of the list below that will work and some parts that won't. As I have said before, we should document what doesn't work. |
||
- Able to define MongoDB collections using Django models | ||
- Able to query data using Django’s `QuerySets` | ||
- Able to use Django’s authentication system `django.contrib.auth` | ||
- Able to use Django’s automatic admin interface `django.contrib.admin` | ||
- Able to use Django’s management commands | ||
- Able to use MongoDB’s Aggregation Pipeline | ||
|
||
## What's next? | ||
We are working towards a Public Preview release early 2025. We do not yet have a timeline for general availability. Exact details of the roadmap will be published soon. Stay tuned! | ||
What level of support will MongoDB provide to developers using this code? | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this meant to be a new header? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yep. Thanks for catching that. |
||
|
||
This code is still in development and not intended for POC or production use cases, so we are not providing formal support within our Technical Services team at this time. | ||
|
||
## Known issues and limitations | ||
|
||
- The following `QuerySet` methods aren't supported: | ||
|
@@ -149,6 +172,10 @@ from the new application's `apps.py` file. | |
- You can study the skipped tests in `DatabaseFeatures.django_test_skips` for | ||
more details on known issues. | ||
|
||
|
||
## We value your feedback! | ||
We invite you to share your feedback as we work to address this challenge. If you are interested in becoming a design partner, please connect with us through our community forum. You can also create issues or submit pull requests directly to our project GitHub repository. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What does it mean to be a design partner? Where is the community forum? |
||
|
||
## Troubleshooting | ||
|
||
TODO | ||
TODO |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Putting this background information amid technical details is out of place. I wouldn't personally include this information in this document.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about moving it to the top of the document?