Archived
Saves orders.
This commit is contained in:
1 parent
01732ef051
commit
93173a8d9d
3 files changed
+25
-7
No files matched your search
@@ -30,7 +30,11 @@ class BaseFormView(TemplateView):
|
||||
response = template.render(Context(context_data))
|
||||
return HttpResponse(response)
|
||||
|
||||
self._save_data(params)
|
||||
return HttpResponse('<html><head><title>Suksess!</title></head><body><p>Bestillingen har blitt sendt.</p></body></html>')
|
||||
|
||||
def _get_errors(self, params):
|
||||
return {}
|
||||
|
||||
def _save_data(self, params):
|
||||
raise NotImplementedError
|
||||
@@ -1,17 +1,14 @@
|
||||
from django.db import models
|
||||
|
||||
# Create your models here.
|
||||
class DesignOrder(models.Model):
|
||||
client = models.CharField(max_length=50)
|
||||
deadline = models.DateField()
|
||||
contact_name = models.CharField(max_length=50)
|
||||
contact_email = models.CharField(max_length=50)
|
||||
contact_number = models.CharField(max_length=20)
|
||||
format = models.CharField(max_length=50)
|
||||
format_other = models.CharField(max_length=50)
|
||||
contact_number = models.CharField(max_length=20, blank=True, null=True)
|
||||
format_type = models.CharField(max_length=50)
|
||||
paper_size = models.CharField(max_length=50)
|
||||
paper_size_other = models.CharField(max_length=50)
|
||||
colour = models.CharField(max_length=50)
|
||||
marger = models.CharField(max_length=50)
|
||||
content = models.CharField(max_length=50)
|
||||
content = models.TextField(blank=True, null=True)
|
||||
created = models.DateTimeField(auto_now_add=True)
|
||||
@@ -1,9 +1,12 @@
|
||||
from datetime import datetime
|
||||
|
||||
from bestilling.baseform import BaseFormView
|
||||
from design.models import DesignOrder
|
||||
from django.core.context_processors import csrf
|
||||
from django.http import HttpResponse, Http404
|
||||
from django.template import Context, Template
|
||||
from django.template.loader import get_template
|
||||
from django.views.decorators.http import require_GET, require_POST
|
||||
from bestilling.baseform import BaseFormView
|
||||
|
||||
class DesignForm(BaseFormView):
|
||||
template_name = 'design/form.html'
|
||||
@@ -40,3 +43,17 @@ class DesignForm(BaseFormView):
|
||||
|
||||
return dict((error, True) for error, has_happened in errors.iteritems() if has_happened is True)
|
||||
|
||||
def _save_data(self, params):
|
||||
order = DesignOrder(
|
||||
client = params['client'],
|
||||
deadline = datetime.strptime(params['deadline'], '%Y-%m-%d').date(),
|
||||
contact_name = params['contact_name'],
|
||||
contact_email = params['contact_email'],
|
||||
contact_number = params['contact_number'],
|
||||
format_type = params['format'] if params['format'] != 'other' else params['format_other'],
|
||||
paper_size = params['paper_size'] if params['paper_size'] != 'other' else params['paper_size_other'],
|
||||
colour = params['colour'],
|
||||
marger = params['marger'],
|
||||
content = params['content'],
|
||||
)
|
||||
order.save()
|
||||
Reference in new issue
Block a user