django reverse() failing -


simply put mentions of reverse() anywhere in project failing, , {% url %}. have since made progress if scroll bottom!


relevant files

root/urls.py

from django.conf.urls.defaults import patterns, include, url django.contrib.staticfiles.views import serve servestatic  # uncomment next 2 lines enable admin: django.contrib import admin admin.autodiscover()  urlpatterns = patterns('',     (r'^admin/',   include(admin.site.urls)),     (r'^dbrowse/', include('dbrowse.urls')),     (r'^static/',  servestatic),     url(r'^$',    'core.views.viewhallo',name='home'), ) 

root/core/views.py

from django.shortcuts import render_to_response django.template.context import requestcontext site import site_store  def viewhallo (request):     pass     return render_to_response ('core.html',                                {'site':site_store,                                 'title':'i hallo view',                                 'content':'hallo world!',},                                  context_instance=requestcontext(request)) 

notes

i first noticed reverse() failing when had file called site.py in project tried call reverse(). using store site settings. using file because

  1. i didn't want use bother database data change.
  2. if nuked projects database didn't want site settings going down

i have since found way use models achieve 2 goals.

but background info, in case here commenting site.py.

update 25/02/11

well here goes!

first notice urls.py has (r'^dbrowse/', include('dbrowse.urls')). caused reverse() fail. i'll explain later...

as template tag, i've discovered {% url %} doesnt take variables. took granted.in fact when testing template tag, i'd go in , hard code such {% url 'home' %} work , i'd test {% url home %} home being variable. din't see being different test cases.

but know {% load url future %} allows use variables arguments {% url %}

anyway, (r'^dbrowse/', include('dbrowse.urls')) in urls.py

i had folder so

project\     --dbrowse\         __init__.py         urls.py 

now dbrowse/urls.py

from django.conf.urls.defaults import patterns, url #databrowse django.contrib import databrowse  databrowse.site.register(mymodel)  urlpatterns = patterns('',                        url(r'(.*)',databrowse.site.root, name='dbrowse'),) 

this attempt avoid having put databrowse.site.register(mymodel) in project's root urls.py docs suggested. dont idea of polluting projects main urls.py databrowse.site.register(mymodel)

however still dont understand why caused reverse() break. i'm supecting it's (.*) being in pattern.


Comments

Popular posts from this blog

linux - Mailx and Gmail nss config dir -

c# - Is it possible to remove an existing registration from Autofac container builder? -

php - Mysql PK and FK char(36) vs int(10) -