Проверка возвращаемого значения пользовательского тега шаблона в шаблоне - PullRequest
0 голосов
/ 02 мая 2019

Я создал пользовательский тег шаблона, который выполняет некоторую обработку и возвращает 1, если все идет хорошо, 0, если нет. В моем шаблоне я хочу проверить возвращаемое значение, и если оно равно 1, отобразить изображение. Как мне это сделать?

Имя моей функции - fname, которое принимает аргумент n и возвращает значение 1 или 0. Итак, я хочу проверить

{% if fname n %}
   <img src="">
{% endif %}

мой пользовательский шаблонный ярлык под названием testing.py

def fname(name):
    path = 'media/'
    path += name

    if path != "media/":
        x_test = cv2.cvtColor(cv2.imread(path), cv2.COLOR_BGR2RGB)
        x_test = np.array(x_test)/127.5 - 1.
        x_test = x_test.reshape((1, 256, 256, 3)) #1 since keras expects first element of shape to be reserved for batch size
        gen = generator.predict(x_test)
        scipy.misc.imsave("main/static/main/modimages/"+name, gen[0])
        return 1

    else:
        return 0

в моем шаблоне

{% load testing %}
{% if fname n %}
<img src="abc.jpg">
{% endif %}

1 Ответ

0 голосов
/ 02 мая 2019
def index(request):
    name = 'yourpic.jpg'
    context= {
        'fname': fname(name)
        }
    return render(request, 'yourpage.html', context)

в шаблоне

{% if fname == 1 %}
<img src="abc.jpg">
{% endif %}
...