Django 2.0模型管理链接使用allow_tags不工作

时间:2018-05-24 15:47:15

标签: python django

我想学习Django并研究我找到了这本有趣的书Django By Example。其中一个问题是本书使用的是Django 1.8.6并且我正在尝试使用v2.0,因此我偶尔会遇到一些错误,你可以很容易地解决它。但是当我尝试使用本书中的代码和说明创建一个商店时,我遇到了这个问题:

Image

我使用的代码就是这个:

view.py

@staff_member_required
def admin_order_detail(request, order_id):
     order = get_object_or_404(Order, id=order_id)
     return render(request, 'admin/orders/order/detail.html', {'order': order})

@staff_member_required
def admin_order_pdf(request, order_id):
    order = get_object_or_404(Order, id=order_id)
    html = render_to_string('orders/order/pdf.html', {'order': order})
    response = HttpResponse(content_type='application/pdf')
    response['Content-Disposition'] = 'filename="order_{}.pdf"'.format(order.id)
    weasyprint.HTML(string=html).write_pdf(response,
                                       stylesheets=[weasyprint.CSS(settings.STATIC_ROOT + 'css/pdf.css')])
    return response

urls.py

re_path(r'admin/order/(?P<order_id>\d+)/$', views.admin_order_detail, name='admin_order_detail'),
re_path(r'^admin/order/(?P<order_id>\d+)/pdf/$', views.admin_order_pdf, name='admin_order_pdf'),

admin.py

def order_detail(obj):
    return '<a href="{}">View</a>'.format(reverse('orders:admin_order_detail',
                                              args=[obj.id]))
order_detail.allow_tags = True

def order_pdf(obj):
    return '<a href="{}">PDF</a>'.format(reverse('orders:admin_order_pdf',
                                             args=[obj.id]))
order_pdf.allow_tags = True
order_pdf.short_description = 'PDF bill'

我也在正确的目录中有html文件,但我不认为这是问题所在。所以,如果有人知道我错在哪里,我表示赞赏。

谢谢:3

0 个答案:

没有答案