OK, I've more or less solved my original problems in deploying in this space. Well I've deployed and am happy.

BUT, I am still bamboozled by something and wonder if anyone has any clue or insights to share?

I have these two urlpatterns defined:

    url(r'^list/(?P<model>\w+)', views.view_List.as_view(), name='list')
    url(r'^view/(?P<model>\w+)/(?P<pk>\d+)$', views.view_Detail.as_view(), name='view'),

Works a charm with these template tags:

    <a href="{% url 'list' 'Player' %}">List Players</a>
    <a href="{% url 'view' model_name o.pk %}">View Player {{ o }} </a>

That url tag produces these URLs:

    http://127.0.0.1:8000/list/Player
    http://127.0.0.1:8000/view/Player/1

And it works. I click the links and they work. Well I've been developing this way for  a couple of years and it's always worked ;-). it's great!

BUT, after deploying, this resolves on the home page to:

    http://leaderboard.space/list/Player

And when I click it it works! Awesome. Happy as. Great stuff. Gotta love Django!

BUT, if is open this page:

    http://leaderboard.space/view/Player/1

It renders fine, I see a great view of player 1.

BUT, on that page is the good old list link from above, namely:

    <a href="{% url 'list' 'Player' %}">List Players</a>

and on the dev site this resolves to:

    http://127.0.0.1:8000/list/Player

and here is the thing I'm stuck on! On the deployed site it renders as:

    http://leaderboard.space/view/list/Player

What? Where did that 'view' come from? Of course I click it I get a 404 error:

   Page not found (404)
   Request Method:    GET
   Request URL:    http://leaderboard.space/view/list/Player
   Using the URLconf defined in CoGs.urls, Django tried these URL
   patterns, in this order:

    1. ^$ [name='home']
    2. ^admin/
    3. ^login/$ [name='login']
    4. ^logout/$ [name='logout']
    5. ^fix [name='fix']
    6. ^unwind [name='unwind']
    7. ^check [name='check']
    8. ^rebuild [name='rebuild']
    9. ^kill/(?P<model>\w+)/(?P<pk>\d+)$ [name='kill']
   10. ^list/(?P<model>\w+) [name='list']
   11. ^view/(?P<model>\w+)/(?P<pk>\d+)$ [name='view']
   12. ^add/(?P<model>\w+)$ [name='add']
   13. ^edit/(?P<model>\w+)/(?P<pk>\d+)$ [name='edit']
   14. ^delete/(?P<model>\w+)/(?P<pk>\d+)$ [name='delete']
   15. ^leaderboards [name='leaderboards']
   16. ^json/game/(?P<pk>\d+)$ [name='get_game_props']
   17. ^json/leaderboards [name='json_leaderboards']
   18. ^static\/(?P<path>.*)$

   The current path, view/list/Player, didn't match any of these.

clearly. Because I don't look for this bizarre and newly introduced 'view'.

Now to be clear, I have a way around this, but I am not looking for a workaround here, I'm fishing for any clues that help me understand how the url template tag generates its output and when and why it inserts a string like this that seems to be the name of the view that the link is on!

Mystery++ and PITA.

Regards,

Bernd.

--
You received this message because you are subscribed to the Google Groups "Django 
users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/7321f6b7-a422-464f-0e13-77e099dc704c%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to