Django消息应用程序突然显示以下错误:
AttributeError at /user_logout/
'function' object has no attribute 'add_message'
Request Method: GET
Request URL: http://127.0.0.1:8080/user_logout/
Django Version: 1.5.5
Exception Type: AttributeError
Exception Value:
**'function' object has no attribute 'add_message'**
Exception Location: F:\mysite\myproj\myapp\views.py in user_logout, line 185
Python Executable: F:\mysite\env\Scripts\python.exe
Python Version: 2.7.3
我不知道为什么会出现这个错误。
def user_logout(request):
r_user = RU.objects.get(id=request.session['somekey'])
try:
del request.session['somekey']
r_user.logout_ts = datetime.datetime.now()
r_user.save()
messages.add_message(request, messages.INFO, 'Logged out!')
return HttpResponseRedirect("/")
except KeyError:
messages.add_message(request, messages.INFO, 'You are not Logged in!')
return HttpResponseRedirect("/")
settings.py
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
TEMPLATE_CONTEXT_PROCESSORS = {
'myproj.context_processors.which_page',
'myproj.context_processors.user_context',
'django.contrib.auth.context_processors.auth',
'django.core.context_processors.request',
'django.contrib.messages.context_processors.messages',
}
昨晚一切正常。但是今天它显示了上面提到的错误。任何人都知道为什么会这样?我试过搜索,但似乎没有人遇到过这种突然的行为。另外,仅供参考,我关闭了cmd提示符而没有停用virtualenv我不知道这会如何影响功能但是以防万一。
提前致谢。
答案 0 :(得分:5)
您可能在messages()
视图所在的文件中有一个名为user_messages
的函数。