我發現Django實驗,nexus和gargoyle與Django 1.5不兼容。幸運的是,幾乎所有的問題都通過引用第一個參數到「url」模板標籤的每一處發生。django實驗和Django 1.5:NoReverseMatch錯誤
我堅持反對的東西我一直無法弄清楚 - 我收到以下錯誤,當我去我的目標頁:
NoReverseMatch at /trial/trial1/
Reverse for 'experiment_goal' with arguments '(u'clicktrynow',)' and keyword arguments '{}' not found.
我跑的Django 1.5。 1和Python 2.7.3在runserver上。我也可以在Heroku的Python 2.7.4中重現這一點。
我的目標頁面(達到該頁面完成目標)有這一行吧:
{% experiment_goal "clicktrynow" %}
的experiment_goal templatetag似乎自動包含在這一點上實驗/ goal.html模板。實驗/ goal.html包含:
<img src="{% url 'experiment_goal' goal_name %}?v={{ random_number }}" height="1" width="1" />
(我已經固定在引用 'experiment_goal'。)
的URL模式的Django的實驗應用包含此行:
url(r'^goal/(?P<goal_name>.*)$', 'record_experiment_goal', name="experiment_goal"),
最後,我的settings.py與django實驗相關的行是:
EXPERIMENTS_REDIS_HOST = get_env_variable('REDISTOGO_URL', default='redis://localhost:6379')
EXPERIMENTS_REDIS_PORT = 6379
EXPERIMENTS_REDIS_DB = 0
INSTALLED_APPS += ('django.contrib.humanize', 'nexus', 'gargoyle', 'experiments',)
MIDDLEWARE_CLASSES += ('experiments.middleware.ExperimentsMiddleware',)
EXPERIMENTS_GOALS = ('clicktrynow',)
我是Django的新手,b所有這一切似乎都應該起作用。我錯過了什麼?
更新:我的項目的urls.py不包含來自django實驗的urls.py。文檔沒有說你需要。但也許我應該。調查...
RE:您的更新,是的,你將需要包括除非這裏有一些魔法,否則任何模式的URL都會註冊99%的時間。 – 2013-04-30 01:28:32