Ssa!

2022-09-30 금요일 회고록 본문

스파르타 내일배움캠프/TIL

2022-09-30 금요일 회고록

Ssa! 2022. 10. 5. 02:28

함수형 뷰 쓰는 것을 연습했는데 이번 프로젝트에서는 클래스 뷰 쓰는 것을 적용해보는 것이 어떨까 싶다.! 

클래스란?

변수와 함수의 집합

클래스는 상속을 받을 수 있는데 상속해주는 class의 모든 변수, 함수를 상속 받는 클래스에서 쓸 수 있음

클래스형 뷰란?

개발자들이 자주 쓸만한 view를 클래스로 만들어 둔 것

 

app의 views.py

#def post_create(request):
#    if request.method == 'POST':
#        post_form = PostForm(request.POST)
#        if post_form.is_valid():
#            new_post = post_form.save()
#            return redirect('post-detail', post_id=new_post.id)
#else:
#        post_form = PostForm()
#return render(request, 'posts/post_form.html', {'form': post_form})
from django.views. import View #import는 장고에서 제공하는 건 위로 보낸다(협업할때!)

class PostCreateView(View): #파스칼 케이스를 쓴다!
    def get(self, request):
       post_form = PostForm()
        return render(request, 'posts/post_form.html', {'form': post_form})

    def post(self, request):
        post_form = PostForm(request.POST)
        if post_form.is_valid():
            new_post = post_form.save()
            return redirect('post-detail', post_id=new_post.id) 


app의 urls.py
path('posts/new/', views.PostCreateView.as_view(), name='post-create'), #Class형 뷰를 쓸때는 방식은 .as_view()써줘야한다

 

'스파르타 내일배움캠프 > TIL' 카테고리의 다른 글

2022-10-05 수요일 회고록  (0) 2022.10.06
2022-10-04 화요일 회고록  (0) 2022.10.06
2022-09-29 목요일 회고록  (0) 2022.10.01
2022-09-28 수요일 회고록  (0) 2022.09.29
2022-09-27 화요일 회고록  (0) 2022.09.28