如何获取http响应代码Django中的网址?

时间:2018-10-28 17:47:12

标签: python django django-templates

我需要根据有关URL的响应代码在模板文件中应用if语句。由于我不知道任何直接方法,因此我打算制作一个自定义模板标签,例如:

from django import template

register = template.Library()

@register.filter(name='code')
def code(url):
    a = http.response(url)
    return a

然后我将在模板中将其称为:

{% if model.fileurl|code==200 %}
<div>..............</div>

此外,当我尝试填充django开发人员的工作时,有没有办法直接在模板中进行操作。

1 个答案:

答案 0 :(得分:2)

您可以制作一个返回状态代码的模板标签:

cmd

Picasso.get() .load("https://domain/images/profile_picture/" + otherImage) .networkPolicy(NetworkPolicy.OFFLINE) .transform(new CircleTransform()) .into(imageView, new Callback() { @Override public void onSuccess() { } @Override public void onError(Exception e) { int placeHo; if(otherGender.equals("female")) placeHo = R.drawable.ic_female_color; else placeHo = R.drawable.ic_male_color; Picasso.get() .load("https://domain/images/profile_picture/" + otherImage) .error(placeHo) .transform(new CircleTransform()) .centerCrop(Gravity.TOP) .into(imageView, new Callback() { @Override public void onSuccess() { } @Override public void onError(Exception e) { Log.v("Picasso","Could not fetch image"); } }); } }); 目录还需要包含一个# app/templatetags/code.py from django import template from requests import get as reqget register = template.Library() @register.filter(name='code') def code(url): reqget(url).status_code文件(如果还没有,则可以添加一个空文件)。

,然后在模板中:

app/templatetags/