인프런 커뮤니티 질문&답변

쑤시리님의 프로필 이미지
쑤시리

작성한 질문수

Vue-Django-Bootstrap 뚝딱 블로그

폼 처리 및 CreateView

Internal 500 서버오류 질문드립니다

작성

·

241

0

TypeError: __init__() takes 1 positional argument but 2 were given 라는 오류가 자꾸뜹니다!

댓글작성만 누르면 이러네요 도와주세요 ㅠ

 

답변 3

0

댓글 전송이 안됩니다

왜 그런지 어느정도 짐작은 되는데 dj는 첨이라 해결방법을 모르겠어요.

 

도와주세요

axios 코드

onSubmitForm() {
      let form = new FormData();
      form.set("post", this.post?.id);
      form.set("content", this.commentValue);
      axios
        .post("/api/post/comment/add/", form, {
          // headers: { "X-CSRFToken": "{{csrf_token}}" },
        })
        .then((res) => {
          console.log(res.data);
        });
    },

 

...
path('post/comment/add/', views.ApiAddComment.as_view(), name='add_comment'),

 

 

class ApiAddComment(BaseCreateView):
    model = Comment
    fields = '__all__'

    def form_valid(self, form):
        self.object = form.save()
        comment = obj_to_comment(self.object)
        return JsonResponse(data=comment, safe=True, status=201)

    def form_invalid(self, form):
        return JsonResponse(data=form.errors, safe=True, status=400)

 

error

111.PNG

@csrf_exempt

decorator 를 간단하게 붙혀 시도 해봤는데, as_view() 가 없다고 해서 이건 포기했는데

도와주세요

 

0

김석훈님의 프로필 이미지
김석훈
지식공유자

urls.py 에서, /api/comment/create/ 에 대한 뷰가 ApiCommentCV 로 잘 정의되어 있나요 ?

그렇다면, form_valid() 와 form_invalid() 메소드에 각각 print() 문장을 넣어서, 로직이 어디로 타는지 보실래요?

쑤시리님의 프로필 이미지
쑤시리
질문자

아 as_view()를 빼먹었네요ㅠㅠㅠ 감사합니다

0

김석훈님의 프로필 이미지
김석훈
지식공유자

안녕하세요. 독자님.

제가 상경 중이라 자세히 보지는 못했지만, 우선 장고쪽 터미널의 에러 메시지를 모두 보여주실래요 ?

쑤시리님의 프로필 이미지
쑤시리
질문자

장고 터미널 에러 메시지 입니다

쑤시리님의 프로필 이미지
쑤시리

작성한 질문수

질문하기