사용자의 프로필 페이지에 연결하려고했지만 시도 할 때마다 404 오류가 반환됩니다. 모르겠지만 urls.py 파일에 오류가있을 수 있습니다.
views.py
def profile(request, username=None):
if username:
post_owner = get_object_or_404(User, username=username)
else:
post_owner = request.user
args1 = {
'post_owner': post_owner,
}
return render(request, 'profile.html', args1)
urls.py
urlpatterns = [
path('<str:username>/', views.profile, name='profile'),
path('login', views.login, name='login'),
path('register', views.register, name='register'),
path('logout', views.logout, name='logout'),
]
index.html
<a class="nav-link" href="{{ request.user }}">{{ user.username }}</a>
다음과 연결해야합니다.
<a class="nav-link" href="{{ request.user.username }}">{{ user.username }}</a>
그러나 {% url … }
템플릿 태그 [Django-doc] 를 사용하는 것이 좋습니다 .
<a class="nav-link" href="{% url 'profile' username=request.user.username %}">{{ user.username }}</a>
경로도 겹칩니다. 즉 , 첫 번째 경로가라는 아이디어로 "실행"되므로 , 또는 에 액세스 할 수 없습니다 .login
register
logout
username='login'
다음 과 같이 겹치지 않는 경로를 정의하는 것이 좋습니다 .
urlpatterns = [
path('profile/<str:username>/', views.profile, name='profile'),
path('login/', views.login, name='login'),
path('register/', views.register, name='register'),
path('logout/', views.logout, name='logout'),
]
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다