Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 22nd, 2012  |  syntax: None  |  size: 1.61 KB  |  hits: 12  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. django problem:captured parameter in parent urlconf , incude() and reverse match
  2. urlpatterns = patterns(''
  3.  
  4.     #if registered user/anonymous user visit someone's page
  5.     url(r'^/foo/users/(?P<username>w+)/app1/',include('app1.urls', namespace='myapp1')),
  6.  
  7.     #if user is logged in in his own page
  8.     url(r'^app1/', include('app1.urls', namespace='myapp1')),
  9.     ...
  10. )
  11.        
  12. urlpatterns = patterns('',
  13.     # I expect this pattern receives the username parameter from above
  14.     url(r'^note/add/$', app1_views.add_note,
  15.      name='add_note'),
  16.  
  17.     url(r'^note/add/$', app1_views.add_note,
  18.     { 'username':None}, name='add_note_own'),
  19.     ...
  20.     ...    
  21. )
  22.        
  23. def add_note(request, username=None):
  24.     ...
  25.     ...
  26.        
  27. {% if request.user.is_authenticated %}
  28.     {%if in his/her own note page %}
  29.         <a href="{% url add_note_own %}">add note</a> Expected generated url: www.domain.com/app1/add
  30.     {%else}
  31.         <a href="{ %url add_note %}">add note</a> Expected generated url: www.domain.com/foo/jack/app1/add
  32.     {%endif%}
  33. {% endif %}
  34.        
  35. urlpatterns = patterns('',
  36.     # I expect this pattern receives the username parameter from above
  37.     url(r'^note/add/(?P<username>[^/]+)/$', app1_views.add_note, name='add_note'),
  38.  
  39.     # username is an optional argument, so no need to pass it
  40.     url(r'^note/add/$', app1_views.add_note, name='add_note_own'),
  41. )
  42.        
  43. {% if request.user.is_authenticated %}
  44.     {% if page.owner == request.user %}
  45.       <a href="{% url add_note_own %}">add note</a>
  46.     {% else %}
  47.        <a href="{% url add_note request.user.username %}">add note to {{ request.user.username }}</a>
  48.     {% endif %}
  49. {% endif %}