-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathviews.py
67 lines (47 loc) · 1.67 KB
/
views.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
from django.shortcuts import render, get_object_or_404
from django.urls import reverse
from django.views.generic import (
CreateView,
DetailView,
ListView,
UpdateView,
ListView,
DeleteView
)
from .forms import ArticleModelForm
from .models import Article
class ArticleCreateView(CreateView):
template_name = 'articles/article_create.html'
form_class = ArticleModelForm
queryset = Article.objects.all() # <blog>/<modelname>_list.html
# success_url = '/'
def form_valid(self, form):
print(form.cleaned_data)
return super().form_valid(form)
# def get_success_url(self):
# return '/'
class ArticleListView(ListView):
template_name = 'articles/article_list.html'
queryset = Article.objects.all() # <blog>/<modelname>_list.html
class ArticleDetailView(DetailView):
template_name = 'articles/article_detail.html'
# queryset = Article.objects.all()
def get_object(self, **kwargs):
id_ = self.kwargs.get("id")
return get_object_or_404(Article, id=id_)
class ArticleUpdateView(UpdateView):
template_name = 'articles/article_create.html'
form_class = ArticleModelForm
def get_object(self, **kwargs):
id_ = self.kwargs.get("id")
return get_object_or_404(Article, id=id_)
def form_valid(self, form):
print(form.cleaned_data)
return super().form_valid(form)
class ArticleDeleteView(DeleteView):
template_name = 'articles/article_delete.html'
def get_object(self, **kwargs):
id_ = self.kwargs.get("id")
return get_object_or_404(Article, id=id_)
def get_success_url(self):
return reverse('articles:article-list')