# get_context_data

2개의 포스트

15. CreatePost, UpdatePost

PostCreate(,,CreateView): 1 글쓰기 뼈대 2 권한 설정: test_func(self) 3 author는 로그인 정보로 입력 form의 request.POST를 받아서 처리하는 form_valid(self, form) 오버라이딩! author는 포린키! form.instance.author : 폼의 author속성에 로그인 정보 원래의 form_valid(form)객체에 (author를 추가한) form 을 담아서, response 에 담아 리턴 4. tag 는 Tag 모델에 입력 : slugify, getorcreate() 다대다 데이터 생성 (post, tag ) self.object.tags.add(tag) 폼에서 입력받은 태그 가져오기 : self.request.POST.get('tags_str') 태그형태는 태그1,태그2;태그3 태그 저장할 때 ,

2023년 4월 9일
·
0개의 댓글
·
post-thumbnail

TIL#8

1) > 세 가지 뷰는 거의 동일한 기능을 가진다. 그런데 TemplateView에서는 templatename을 명시적으로 지정해준 반면에 DetailView에서는 모델명과 모델이 위치한 앱 그리고 이것이 DetailView인 점에서 'itemdetail'을 유추하는 기능이 내재돼있다. >> DetailView가 SingleObjectTemplateResponseMixin을 상속하는데 여기 gettemplatenames() 메소드가 정의돼있다. suffix가 _detail임을 확인할 수 있다. >>> 함수 기반 뷰의 해당 부분은 SingleObjectMixin에 내재돼있다. 2) > 로그인하지 않은 유저에게는 is_public의 아이템만 보이도록 코딩한 것인데, 조건을 타이트하게 걸어 줄수록 class 자체를 정의하고 넘어가는 편이 나아 보인다. 3) > 템플릿 내에서 사용할 이름은 context라는 사전의 형태로 전달되는데 getcontextdata라는 메소

2022년 8월 22일
·
0개의 댓글
·