【发布时间】:2019-11-12 04:03:30
【问题描述】:
如何修复此错误:
int() argument must be a string, a bytes-like object or a number, not 'User'
我想创建我厌倦了修复的用户配置文件!
我想在他注册时创建用户页面但我一次又一次收到此错误
Base.Html
{% if user.is_authenticated %}
<li class="nav-item">
<a class="nav-link navaour" href="{% url 'profile' pk=user.pk %}"><i class="fa fa-user"></i> Profile</a>
</li>
<li class="nav-item">
<a class="nav-link navaour" href="{% url 'logout' %}"><i class="fa fa-power-off"></i> Logout</a>
</li>
{% else %}
<li class="nav-item">
<a class="nav-link navaour" href="{% url 'register' %}"><i class="fa fa-check-square-o"></i> Sign up Free</a>
</li>
<li class="nav-item">
<a class="nav-link navaour" href="{% url 'login' %}"><i class="fa fa-user"></i> Login</a>
</li>
{% endif %}
Urls.py
from . import views
from django.urls import path
urlpatterns = [
path('', views.index,name='index'),
path('accounts/signup/', views.user_reg,name='register'),
path('profile/<int:pk>',views.profile_detail,name='profile')
]
Views.py
def profile_detail(request,pk):
pk = User.objects.get(pk=pk)
model = get_object_or_404(User, pk=pk)
template_name = 'profile_detail_view.html'
这是我的 Models.py
from django.db import models
from django.contrib.auth.models import User
from django.urls import reverse
# Create your models here.
class user_register_model(models.Model):
user = models.OneToOneField(User,on_delete=models.CASCADE)
def get_absolute_url(self):
return reverse("profile",kwargs={'pk':self.pk})
错误:
感谢任何帮助 谢谢!
【问题讨论】:
标签: python django django-models django-templates django-views