Python 属性错误位于/admin';匿名用户';对象没有属性';名字';
我已经在Heroku上部署了Django项目。现在,当我试图访问管理员页面Python 属性错误位于/admin';匿名用户';对象没有属性';名字';,python,django,heroku,django-views,django-admin,Python,Django,Heroku,Django Views,Django Admin,我已经在Heroku上部署了Django项目。现在,当我试图访问管理员页面url/admin,我得到 AttributeError at/admin “AnonymousUser”对象没有属性“first\u name” 如果我在本地运行相同的代码,那么管理页面就没有问题。它开得很好 所以问题是这行实际上在views.py中 /app/exam/views.py in topic_view Line:59 | fname = request.user.first_name 所以
url/admin
,我得到
AttributeError at/admin
“AnonymousUser”对象没有属性“first\u name”
如果我在本地运行相同的代码,那么管理页面就没有问题。它开得很好
所以问题是这行实际上在views.py中
/app/exam/views.py in topic_view
Line:59 | fname = request.user.first_name
所以我的问题是为什么在我试图打开管理站点时调用views.py
编辑:
这是应用程序“考试”的URL.py文件
from django.urls import path
from . import views
urlpatterns = [
path("", views.index, name="index"),
path("login", views.login_view, name="login"),
path("search", views.search_view, name="search"),
path("logout", views.logout_view, name="logout"),
path("register", views.register_view, name="register"),
path("<str:subject_code>", views.topic_view, name="topics"),
path("instructions/<int:topic_id>", views.instruction_view, name="instructions"),
path("test/<int:topic_id>", views.test_view, name="test"),
path("test/score/<int:topic_id>", views.score_calculator, name="score"),
]
由于您有匿名用户错误,这意味着该用户未登录,并且由于他/她未登录,他/她不能具有任何诸如用户名、名字等属性。在您的帖子中添加您的url。您可以显示您的url文件吗?您没有检查该用户是否实际登录。您可以使用此
请求检查用户是否为匿名用户。user.is\u匿名
。另外,如果您的视图是FBV,最好放置一个@login\u required
装饰器。我已经添加了url.py@NalinDobhalI,并且添加了url文件@Dmitry。
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path("admin/", admin.site.urls),
path("", include("exam.urls")),
]