강의

멘토링

로드맵

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

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

작성한 질문수

Vue-Django-Bootstrap 뚝딱 블로그

폼 처리 및 CreateView

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

작성

·

318

0

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

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

 

퀴즈

이전/다음 포스트 정보를 가져올 때, 네트워크 부하를 줄이기 위해 서버(Django)는 클라이언트(Vue)에게 데이터를 어떤 형태로 제공하나요?

이전 포스트와 다음 포스트를 각각 다른 API 요청으로 받습니다.

이전 포스트와 다음 포스트 정보를 하나의 JSON 객체로 묶어 한 번에 제공합니다.

포스트 ID만 목록 형태로 제공하고, 필요시 상세 정보를 다시 요청합니다.

HTML 형식으로 데이터를 제공하여 클라이언트에서 파싱합니다.

답변 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

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

안녕하세요. 독자님.

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

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

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

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

작성한 질문수

질문하기