Form post mixin¶
This mixin is for django generic class based views, it post the django forms using javascript, (no refresh is needed).
from easy_rest.mixins import FormPostMixin
from django.views.generic import UpdateView
class UpdateViewApi(FormPostMixin, UpdateView):
fields = ['first_name', 'last_name']
template_name = 'app/test_form_post.html'
model = User
success_message = 'model has been changed {}'.format(datetime.now())
def get_object(self, queryset=None):
return User.objects.get(pk=1)
<html lang="en">
{% load easy_rest %}
<head>
{% load_rest_all %}
</head>
<body>
{% include "easy_rest/easy_rest_form.html" with form=form %}
</body>
</html>
You can also add an override save function for the form
from easy_rest.mixins import FormPostMixin
from django.views.generic import UpdateView
class UpdateViewApi(FormPostMixin, UpdateView):
fields = ['first_name', 'last_name']
template_name = 'app/test_form_post.html'
model = User
success_message = 'model has been changed {}'.format(datetime.now())
def get_object(self, queryset=None):
return User.objects.get(pk=1)
@staticmethod
def form_save_function(form):
form.save()
print("form saved")
Requirements¶
load all the rest scripts and styles using
<html>
{% load easy_rest %}
<head>
{% load_rest_all %}
</head>
</html>