gpt4 book ai didi

python - 如何将帖子的作者的个人资料页面与 django 链接起来?

转载 作者:行者123 更新时间:2023-12-01 04:04:38 24 4
gpt4 key购买 nike

我试图将帖子的作者链接到他的个人资料页面,但是当我单击链接时,会引用两个/profiles/而不是作者的 ID。

我的views.py看起来像这样:

def userpage(request, id):
profil = get_object_or_404(UserProfile, pk=id)
context = {'profil': profil}
return render(request, 'gaestebuch/userpage.html', context)

我的 urls.py 看起来像这样:

url(r'^profiles/(?P<id>[0-9]+)/$', views.userpage, name='userpage')

我想要链接的 html 部分如下所示:

{% for e in latest_eintrage_list %}
<li>
<div id="comment_main">
---> <a href="{% url 'gaestebuch:userpage' profil.id %}">{{ e.author }}</a>
<br>
</div>
<a href="{% url 'gaestebuch:result' e.id %}">{{ e.title }}</a>
<br>
<div id="comment_main">
Comments: {{ e.comments.count }} | {{ e.created_date }} | {{ e.get_typ_display }}
</div>
{% if not forloop.last %}
<hr>
{% endif %}
</li>
{% endfor %}

标有箭头的部分是我想要链接到作者的部分。

模型.py:

class UserProfile(models.Model):
user = models.OneToOneField(User)
info = models.CharField(max_length=200, blank = False, default=('keine Angabe'))


class Eintrag(models.Model):
author = models.ForeignKey('auth.User')
title = models.CharField(max_length=200)
text = models.TextField()
NEED = 'ND'
GIVE = 'GV'
TYP_CHOICES = (
(NEED, 'Need'),
(GIVE, 'Give'),
)

typ = models.CharField(max_length=2, choices= TYP_CHOICES, default=NEED)
created_date = models.DateTimeField(default=timezone.now)

我收到以下错误消息:

Reverse for 'userpage' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: [u'gaestebuch/profiles/(?P<id>[0-9]+)/$']      

我很高兴能得到任何帮助:)

最佳答案

{% for e inlatest_eintrage_list %} 循环内,您确实有一个变量 profile。因此 profil.id 被视为空字符串,并且 url 标记失败。

您可以按照从 Eintrag.author 外键到 User 模型的外键,然后按照一对一字段向后到 UserProfile型号:

<a href="{% url 'gaestebuch:userpage' e.author.userprofile.id %}">{{ e.author }}</a>

关于python - 如何将帖子的作者的个人资料页面与 django 链接起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35847419/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com