Отображение смайлов с кодом html из моделей TextChoices - PullRequest
0 голосов
/ 05 августа 2020

Надеюсь, у вас все хорошо,

Я создал TextChoices models для своего UserProfile. Если отображать данные {{user.userprofile.smiley}}, я получил код 🍆, но не ?. У вас есть идеи?

Я добавил это в свой файл settings.py (DB) 'OPTIONS': {'charset': 'utf8mb4'}, проблема все еще существует. Также измените мое MYSQL поле смайлика на utf8mb4_bin ...

class Smileys(models.TextChoices):
    AUBERGINE = '🍆'
    AVOCADO = '🥑'
    BROCCOLI = '🥦'
    ...

class UserProfile(models.Model):
    smiley = models.CharField(max_length=20,choices=Smileys.choices,default=Smileys.CHERRY,)
    ...

1 Ответ

1 голос
/ 05 августа 2020

Используйте фильтр шаблона safe, если вы хотите отключить HTML экранирование строки

{{ user.userprofile.smiley|safe }}

Вы можете подвергнуть себя XSS-атакам, если вы используете этот фильтр на данные предоставлены злоумышленником, так что будьте осторожны

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...