【发布时间】:2014-04-21 10:27:44
【问题描述】:
我正在寻找使用slug 访问用户个人资料的网址。 IE。我想访问/profile/myname 来调出我的用户资料。我遇到的困难是为用户模型实现 slug 字段。
此外,不确定这是否重要,但我创建了一个 UserProfile 模型,它扩展了标准 User 模型,如下所示:
from django.contrib.auth.models import User
from autoslug import AutoSlugField
class UserProfile(models.Model):
user = models.ForeignKey(User, related_name='profile_name')
about_me = models.TextField(null=True, blank=True)
slug = AutoSlugField(populate_from='User.username', default='', unique=True)
给出错误(尝试迁移时):
DETAIL: Key (slug)=() is duplicated.
我认为这些网址是正确的,但已将其包含在内以供参考(在名为 profile 的应用中):
url(r'^(?P<slug>[\w-]+)', views.detail, name='detail')
【问题讨论】:
-
您的 UserProfile 是否已有迁移?如果有,请出示。并提供您尝试迁移的命令行命令。
标签: django django-models slug