0

URLconfigを使用しています。同じViewを呼び出す2つのURL(POSTとGET用)を作成できますか?Django POSTとGETの同じビューを呼び出す複数のURLを作成

url(r'^persons/(?P<id_person>P\.\d+)/forms/(?P<formacronym>\w+)/$', views.PersonFormView.as_view()), 
url(r'^persons/(?P<id_person>P\.\d+)/forms/(?P<id_form>[\w.]+)/$', views.PersonFormView.as_view()) 

は丁重ビューでこれらのメソッドを呼び出します。

def get(self, request, id_person, formacronym, format = None): 
    form = Form.get_form_for_person(self, id_person, formacronym) 

def post(self, request, id_person, id_form, format = None):   
    form = Form.save_form(self, id_person, id_form) 

これが今の設定で動作していない方法。続行する方法がわからない任意のヒントありがとう。

答えて

0

CBVを使用している場合は、自分のビューを指すURLを1つ作成できます。リクエストメソッドに応じて、クラスの適切なメソッドが実行されます。

from django.views.generic import View 

class FooView(View): 

    def get(self, request, *args, **kwargs): 
     # only gets called when request.method == "GET" 
     assert(request.method == "GET") # True 

    def post(self, request, *args, **kwargs): 
     # only gets called when request.method == "POST" 
     assert(request.method == "POST") # True 
関連する問題