Opened 6 years ago
Last modified 4 years ago
#30296 new New feature
Add how-to guide for JavaScript frameworks integration
Reported by: | Maciej Olko | Owned by: | |
---|---|---|---|
Component: | Documentation | Version: | |
Severity: | Normal | Keywords: | javascript, rest, api, assets |
Cc: | Triage Stage: | Accepted | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
Question "How do I get Django and my JS framework to work together?" is common question being searched on the Internet {1}{2} so it should be vital to have at least introduction to this topic in Django's documentation.
How-to guide would consist of two parts (B and C original descriptions by Ayeric Augustin {3}):
- Consider brief introduction how to make JSON response, what is a REST API and link to API creation Django Packages grid?
- Singe Page App model description — where Django only serves the API
We would need to explain CORS and CSRF in the clearest terms possible. Many devs end up shotgun-debugging CORS or CSRF errors, which always results in insecure deployments. (…) Perhaps a condensed version of Django React SPA Aymeric's blog post {4} could do the job? (…)
- Description of integrating a modern JS framework with django.contrib.staticfiles
(…) The docs should at least give the general idea of "compile your frontend to somewhere Django can find the files, then run collectstatic".
Discussion on django-developers: https://groups.google.com/d/topic/django-developers/KVAZkRCq9KU/discussion
Related:
- https://fractalideas.com/blog/making-react-and-django-play-well-together/
- https://fractalideas.com/blog/making-react-and-django-play-well-together-hybrid-app-model/
- https://fractalideas.com/blog/making-react-and-django-play-well-together-single-page-app-model/
- https://djangopackages.org/grids/g/api/
- https://djangopackages.org/grids/g/asset-managers/
- https://djangopackages.org/packages/p/django-cors-headers/
- https://code.djangoproject.com/wiki/AJAX
{1} https://stackoverflow.com/questions/41867055/how-to-get-django-and-reactjs-to-work-together
{2} https://stackoverflow.com/questions/28590177/django-back-end-with-a-dynamic-front-end-angularjs
{3} https://groups.google.com/d/msg/django-developers/KVAZkRCq9KU/rt24LMnPCAAJ
{4} https://fractalideas.com/blog/making-react-and-django-play-well-together-single-page-app-model/
Change History (6)
comment:1 by , 6 years ago
Triage Stage: | Unreviewed → Accepted |
---|
comment:2 by , 6 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
follow-up: 4 comment:3 by , 5 years ago
Hello folks: Can I take the ticket or the ticket is for internal folks?
comment:4 by , 5 years ago
Replying to tapaswenipathak:
Hello folks: Can I take the ticket or the ticket is for internal folks?
Hi there. Feel free to take it. I created a repo with basic guide, but haven't got back. https://github.com/stlk/django-webpack
comment:5 by , 4 years ago
Owner: | removed |
---|---|
Status: | assigned → new |
comment:6 by , 4 years ago
I think the first step would be to focus on how to get a library which you can install via npm integrated into Django.
CORS, APIs, DRF ... are a different topic (and I think it is out of scope)
But I think this should be documented:
Imagine you want to integrate a simple npm installable JS library like: https://github.com/BlueM/form-change-tracker
It is not that super simple, because above library has a dependency.
The task is not really hard. But up to now everybody does it in a different way. It would be nice to have
a simple default way of integrating npm installable JS libraries.
Accepting, yes. This kind of guide would be great I think. (I guess the difficulty is pitching it exactly right, but that's implementation... 🙂)