Django React Views 1.1 | Coderz Repository

django-react-views 1.1

Last updated:

0 purchases

django-react-views 1.1 Image
django-react-views 1.1 Images

Free

Languages

Categories

Add to Cart

Description:

djangoreactviews 1.1

Django-React-Views
django-react-riews is a Django app providing generic Class Based views and template tags that make it easy to use react
alongside django views and templates.
It can be used along with channels-redux-python
and channels-redux-js to provide a framework to use websockets to keep
a frontend redux state in sync with the database state.
Quick start


Add "django_react_views" to your INSTALLED_APPS setting like this::
INSTALLED_APPS = [
...
'django_react_views',
]



Create a directory in your app called react


Copy webpack.config.js or use you're own webpack config as long as it builds your react components into one of your STATICFILES_DIRS


Use npm to install at least the packages required for react & building with webpack
npm install --save-prod react react-dom
npm install --save-dev babel-core babel-loader babel-preset-env babel-preset-es2015 babel-preset-react glob webpack webpack-cli



Add these scripts to package.json
"scripts": {
"build": "webpack",
"watch": "webpack --watch"
},



Execute npm run watch to start building your react files


Add the react template tag to the template where you want to show your react component
{% load react %}
...
{% react %}
...



Create a view for your template
from django_react_views.views import ReactDetailView
class MyReactView(ReactDetailView):
react_component = 'MyReactComponent.js' # By default this will resolve to dist/app_name/{react_component}. If {% static %} can not find the file you may need to edit some other properties of this class
model_serializer = MyModelSerializer
model = MyModel



Add a url for your view
urlpatterns = [
...
path('my-react-view/<int:pk>/', MyReactView.as_view(), name='my-react-view')
]



This framework provides window.props, which contains a javascript object that can be used to hydrate your react state. This has the shape of::
window.props = {"objects": {"appname.modelname": {"https://example.com/appname/modelname/1/": {object as serialized by your model serializer}} } }



Start the development server and visit http://127.0.0.1:8000/ and visit your page to see you're react component in action

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product: (if this is empty don't purchase this product)

Customer Reviews

There are no reviews.