From d25861e44a63ce7e56ce0d2376b57d2be0234914 Mon Sep 17 00:00:00 2001 From: ferdzo Date: Tue, 18 Apr 2023 14:19:55 +0200 Subject: [PATCH] Big Changes --- serviceCRM/forms.py | 16 +++++++ serviceCRM/models.py | 3 ++ serviceCRM/settings.py | 1 + serviceCRM/templates/serviceCRM/form.html | 31 +++++++++++++ serviceCRM/urls.py | 8 ++-- serviceCRM/views.py | 55 ++++++++++++++++++++--- 6 files changed, 105 insertions(+), 9 deletions(-) create mode 100644 serviceCRM/forms.py create mode 100644 serviceCRM/templates/serviceCRM/form.html diff --git a/serviceCRM/forms.py b/serviceCRM/forms.py new file mode 100644 index 0000000..fd299b6 --- /dev/null +++ b/serviceCRM/forms.py @@ -0,0 +1,16 @@ +from django import forms +from .models import Insert + + +class InputForm(forms.ModelForm): + class Meta: + model = Insert + fields = {"name", "phone", "description", "date","done"} + labels = {'name': "Name", 'phone': "Phone", 'date': "Date", 'description': "Description",'done':"Done"} + + field_order =["name", "phone", "description", "date","done"] + + # name = forms.CharField(label="Name", max_length=30) + # phone = forms.CharField(label="Phone", max_length=30) + # date = forms.DateField() + # description = forms.CharField(label="Write description of the problem...", max_length=300) diff --git a/serviceCRM/models.py b/serviceCRM/models.py index 0335972..bea8ad1 100644 --- a/serviceCRM/models.py +++ b/serviceCRM/models.py @@ -11,4 +11,7 @@ class Insert(models.Model): def __str__(self): return "Ime: "+self.name + " Telefonski broj: "+self.phone+ "\nDefekt: "+self.description + "\nDatum: \n" + def isDone(self): + return self.done + diff --git a/serviceCRM/settings.py b/serviceCRM/settings.py index f2fc914..627bb12 100644 --- a/serviceCRM/settings.py +++ b/serviceCRM/settings.py @@ -40,6 +40,7 @@ INSTALLED_APPS = [ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', + 'crispy_forms' ] MIDDLEWARE = [ diff --git a/serviceCRM/templates/serviceCRM/form.html b/serviceCRM/templates/serviceCRM/form.html new file mode 100644 index 0000000..7244172 --- /dev/null +++ b/serviceCRM/templates/serviceCRM/form.html @@ -0,0 +1,31 @@ + + + + + + + Document + + + + + +
+ {% comment %}
+
+
+
+
+
+
+
+
+ {% endcomment %} + + {% csrf_token %} + {{form.as_p}} + + +
+ + \ No newline at end of file diff --git a/serviceCRM/urls.py b/serviceCRM/urls.py index dcd4ea6..25e4890 100644 --- a/serviceCRM/urls.py +++ b/serviceCRM/urls.py @@ -16,10 +16,12 @@ Including another URLconf """ from django.contrib import admin from django.urls import include, path +from serviceCRM.views import ReportById,index,InsertNew,done -from . import views urlpatterns = [ - path("", views.index, name="index"), + path("", index, name="index"), path('admin/', admin.site.urls), - path("/", views.detail, name="detail"), + path("/", ReportById.ReportById, name="detail"), + path("insert/",InsertNew.insert, name="insert"), + path("done/",done,name="done") ] \ No newline at end of file diff --git a/serviceCRM/views.py b/serviceCRM/views.py index 61d2631..476fab5 100644 --- a/serviceCRM/views.py +++ b/serviceCRM/views.py @@ -1,14 +1,57 @@ -from django.http import HttpResponse -from django.shortcuts import get_object_or_404,render +from django.http import HttpResponse, HttpResponseRedirect +from django.shortcuts import get_object_or_404, render from .models import Insert +from django.views import generic +from .forms import InputForm + from django.template import loader + def index(request): proba = Insert.objects.order_by("name") return HttpResponse(proba) -def detail(request,question_id): - req = get_object_or_404(Insert,id=question_id) - context = {"name":req.name, "phone":req.phone,"desc":req.description,"date":req.date} - return HttpResponse(render(request,"serviceCRM/id.html", context)) + +# def detail(request,question_id): +# req = get_object_or_404(Insert,id=question_id) +# context = {"name":req.name, "phone":req.phone,"desc":req.description,"date":req.date} +# return HttpResponse(render(request,"serviceCRM/id.html", context)) +# + +def inputform(request): + if request.method == 'POST': + if request.POST.get(): + return + + +class ReportById(generic.DetailView): + model = Insert + template_name = "serviceCRM/id.html" + + def ReportById(request, question_id): + req = get_object_or_404(Insert, id=question_id) + context = {"name": req.name, "phone": req.phone, "desc": req.description, "date": req.date} + return HttpResponse(render(request, ReportById.template_name, context)) + + +class InsertNew(generic.View): + model = Insert + template_name = "serviceCRM/form.html" + def insert(request): + if request.method == 'POST': + form=InputForm(request.POST) + if form.is_valid(): + form.save() + print("Raboti") + return HttpResponseRedirect("/admin/") + else: + form = InputForm() + + return render(request,InsertNew.template_name,{'form':form}) + +def done(request,question_id): + req = get_object_or_404(Insert, id=question_id) + if req.isDone(): + return HttpResponse("Done") + return HttpResponse("Not Done")