【问题标题】:urls-views-template tags error on the djangodjango 上的 urls-views-template 标签错误
【发布时间】:2016-05-01 15:16:35
【问题描述】:

我有三个页面(视图、网址、模板),其中一个包含艺术家列表,其中一个包含主列表中的艺术家详细信息。 第一页和第二页工作正常,但我在第三页有问题,我想从艺术家的详细信息中转到第三页 页面,我为导演获取更多详细信息,艺术家的外键在哪里。 但不起作用,如果我点击导演然后从我的艺术家详细信息中转到顶部,则不会显示错误 如果我在浏览器上写 127/...../dir/1 然后转到第三页,但我不能从第二页模板标签开始..

我的代码

我的模特

class artist(models.Model):
    director = models.ForeignKey('Director')
    ..................

class Director(models.Model):
    Name = models.CharField(max_length=100,blank=True)
    ..............................

我的看法

def view_dir(request, pk):
    post = get_object_or_404(Director, pk=pk)
    return render_to_response('blog/director_details.html', {
        'post': post
    })

我的网址

url(r'^view/(?P<slug>[^\.]+)/$', views.view_post, name='view_post'), #artists details
url(r'^dir/(?P<pk>\d+)/$', views.view_dir, name='view_dir'),

艺术家详情中的模板标签

&lt;p&gt;&lt;a href="/dir/{{ director.id }}"&gt;{{post.director}}&lt;/a&gt;&lt;/p&gt;#艺术家详情

【问题讨论】:

  • 想告诉我们那个错误是什么?
  • 使用&lt;p&gt;&lt;a href="{% url 'view_dir' pk=director.id %}"&gt;{{post.director}}&lt;/a&gt;&lt;/p&gt;
  • 问题是我不能用模板标签去第三页=view_dir
  • 如果我使用 '

    {{post.director}}

    ' 然后给我错误'NoReverseMatch at /view/hateful-eight/ Reverse for 'view_dir' with arguments '()' and keyword arguments '{'pk': ''}' not found.尝试了 1 种模式:['dir/(?P\\d+)/$']'
  • 你导演的pk是多少?从外观上看,您已经覆盖了它

标签: python django django-templates django-views django-urls


【解决方案1】:

你的模板标签应该是:

<p><a href="{% url 'view_dir' post.director.id %}">{{post.director}}</a></p>

【讨论】:

  • NoReverseMatch at /view/post-one/ Reverse for 'view_dir' with arguments '('',)' 和关键字参数 '{}' 未找到。尝试了 1 种模式:['(?P\\d+)/$'] 我接受了这个错误
  • @user27818 你确定director是一个有id的实际对象吗?还是应该是 post.director.id?
  • 是的,现在可以工作了,谢谢你这么多 post.director.id 是一个正确的谢谢你
  • @user27818 如果您发现答案是正确的,请通过单击勾选标记将其标记为正确。谢谢
【解决方案2】:

如果我使用模板标签&lt;p&gt;&lt;a href='{% url 'view_dir' post.director.id %}'&gt;{{post.director}}&lt;/a&gt;&lt;/p&gt;然后工作正常问题他们是post.director.iduse post front director.id 因为标签里面的帖子详细信息如果不在里面,那么不要使用post thnx你@Bogdan Goie

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-01
    • 1970-01-01
    • 2018-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-27
    • 1970-01-01
    相关资源
    最近更新 更多