Skip to content

Instantly share code, notes, and snippets.

@anddam
Created May 21, 2017 07:33
Show Gist options
  • Save anddam/af4ecf6aded816442b73820320e04792 to your computer and use it in GitHub Desktop.
Save anddam/af4ecf6aded816442b73820320e04792 to your computer and use it in GitHub Desktop.
from django.conf.urls import url
from . import views
app_name = 'ratings'
urlpatterns = [
url(r'^index/$', views.EnquiryListView.as_view(), name='list'),
url(r'^detail/(?P<pk>[\d]+)/$', views.EnquiryDetailView.as_view(), name='detail'),
url(r'prepare/$', views.EnquiryCreatePrepareView.as_view(), name='prepare'),
url(r'new/$', views.EnquiryCreateView.as_view(), name='create'),
url(r'new/(?P<number>[\d]+)/$', views.EnquiryCreateView.as_view(), name='create-many'),
url(r'^$', views.EnquiryListView.as_view()),
]
from django.contrib.auth.mixins import LoginRequiredMixin
from django.views import generic
from django.shortcuts import redirect
from extra_views import InlineFormSet, CreateWithInlinesView
from ratings import models, forms
class EnquiryDetailView(LoginRequiredMixin, generic.DetailView):
"""
"""
model = models.Enquiry
class EnquiryListView(LoginRequiredMixin, generic.ListView):
"""
"""
model = models.Enquiry
class EnquiryCreatePrepareView(LoginRequiredMixin, generic.FormView):
"""
"""
template_name = 'ratings/enquiry_create_cardinality.html'
form_class = forms.CardinalityForm
def form_valid(self, form):
number = form.cleaned_data['number']
return redirect('ratings:create', number=number)
class DataInline(InlineFormSet):
model = models.Data
fields = ['kind', 'value']
extra = 3
class EnquiryCreateView(LoginRequiredMixin, CreateWithInlinesView):
"""
"""
model = models.Enquiry
fields = ['subject']
inlines = [DataInline]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment