16 Ocak 2013, ÇARŞAMBA
Django isteğe bağlı url parametreleri
Bu Django gibi bir url var:
url(
r'^project_config/(?P<product>\w )/(?P<project_id>\w )/$',
'tool.views.ProjectConfig',
name='project_config'
),
ve benim views.py:
def ProjectConfig(request, product, project_id=None, template_name='project.html'):
...
# do stuff
Sorun project_id parametre isteğe bağlı olmasını istiyorum. /project_config/
/project_config/12345abdce/
eşit derecede geçerli bir url kalıpları, böylece her ikisi de istiyorumEĞERproject_id
geçirilir, daha sonra kullanabilirim. Şu anda haliyle, eğer project_id
parametre olmadan URL'ye erişmek için çalışırsanız bir 404 olsun.
CEVAP
16 Ocak 2013, ÇARŞAMBA
Çeşitli yaklaşımlar vardır.
Süslü bir düzenli ifade... (?:/(?P<title>[a-zA-Z] )/)?
Bir olur
Making a Regex Django URL Token Optional
Daha kolay takip etmek için başka bir şekilde elde edilmesi birden fazla kural, aynı görünüm gösteren tüm sahip olmaktır.
r'^project_config/$',
r'^project_config/(?P<product>\w )/$',
r'^project_config/(?P<product>\w )/(?P<project_id>\w )/$',
Bunu Paylaş:
Şişeyi İsteğe bağlı URL parametreleri...
Nasıl bir form giriş alanları için ist...
Yöntemleri C aşırı ya da isteğe bağlı ...
Ne kadar çok-çok alan isteğe bağlı Dja...
C# 4.0: varsayılan değeri isteğe bağlı...