2017-09-14 1 views
0

두 가지 작업을 수행 할보기를 작성하려고합니다. 먼저 request.method가 Get 인 경우 빈 양식이 표시됩니다. 그런 다음 메소드가 POST 인 경우 양식을 데이터베이스로 제출해야합니다.django - 조회 후 POST가 작동하지 않습니다.

문제는 양식을 제출할 때 POST 물건이 있어야 동일한보기가 실행되지 않고 대신 프로젝트의 루트 URL이 실행된다는 것입니다. 여기 로그입니다 :

(추가 I이 뷰의 URL 설정 한 경우)

[14/Sep/2017 18:27:07] "GET /add HTTP/1.1" 200 1815 
[14/Sep/2017 18:27:12] "POST/HTTP/1.1" 200 1683 

및 코드 (추가는 내가이보기에 설정 한 URL입니다) 다음과 같습니다

def add_link(request): 
    if request.method == 'POST': 
     form = Form(request.POST) 
     ... 

    else: 
     form = Form() 
    return render(request, 'mytemp.html', {'form': form }) 

을 여기에 양식 템플릿에 보이는 방법은 다음과 같습니다

,327,896 완전히 떠나 어느

<form action="." method="post"> 

을 :

<form method="post"> 

을 아니면 현재보기를 가리킨 수 있도록 {% url ... %}를 사용

+0

제출되는 양식이 포함 된 템플릿의 모양은 무엇입니까? – schillingt

+0

위의 질문에 추가했습니다. –

+0

당신의 URL을 보여주십시오. –

답변

0

동작이 제대로 설정되어 있지 않습니다.

<form action="{% url 'yourviewsname' %}" method="post"> 

자세한 내용은 urls.py을 게시하십시오.

관련 문제