У меня есть модель, скажем:Использование Django выбор в шаблоне Logic
from model_utils import Choices
class Day(models.Model):
WEATHER = Choices(
('r', 'rainy', 'Rainy'),
('s', 'sunny', 'Sunny'),
)
weather = models.CharField(max_length=1, choices=WEATHER)
Есть ли способ, в презентации, использовать логические ключевые слова например:
{% ifequal monday.weather Day.WEATHER.rainy %}
It rained monday
{% endifequal %}
Я знаю get_FOO_display(), но скорее не будет тестировать жесткую цепочку (например, monday.get_weather_display == «Дождливый»). Есть ли тег шаблона или включение или какой-либо способ ссылаться на это объявление в модели? Или, по крайней мере, рекомендация по лучшей практике для выбора логики выбора в шаблоне? Я нашел мало данных в документах, не могу обернуть голову вокруг источника, и все вопросы, которые я нашел здесь, это люди, которые ищут метод get_FOO_display.
Спасибо.
Я бы порекомендовал вам поместить логику в вашу модель вместо шаблона. – mishbah
Это, вероятно, мудрая вещь, которую можно сделать, однако, возможно, несостоятельна/беспорядочна, если у вас есть много вариантов для проверки или против. Хотя я полагаю, что в этот момент могут возникнуть большие проблемы. –