2017-02-21 78 views
0

如何在URL模式中傳遞可選參數(而不是隨機)?URL模式中的可選參數(非隨機)

/新/

/新/保存並添加新/

url(
    regex=r'^~new/[save-and-add-new]/$', 
    view=views.BudgetCreateView.as_view(), 
    name='create' 
), 

我需要用這個:

def get_success_url(self): 
    if save_and_add_new_argument_in_url: 
     return HttpResponseRedirect(reverse('item:new')) 
    return HttpResponseRedirect(reverse('item:list')) 

回答

1
url(
regex=r'^~new/(?P<param>\w+)/$', 
view=views.BudgetCreateView.as_view(), 
name='create' 
), 
url(
regex=r'^~new/$', 
view=views.BudgetCreateView.as_view(), 
name='create' 
), 

然後

def get_success_url(self, param=None): 
    if param is not None: 
     return HttpResponseRedirect(reverse('item:new')) 
    return HttpResponseRedirect(reverse('item:list'))