Переключение в светлый или темный режим на Django?
Как сделать кнопку, которая при нажатии будет менять мой css href между light.css и dark.css
Я не могу использовать JavaScript.
В очень простых терминах вы просто измените файл CSS в зависимости от того, выбран ли темный режим или нет:
{% if request.user.darkmode %}
<link rel="stylesheet" href="{% static 'css/dark.css' %}">
{% else %}
<link rel="stylesheet" href="{% static 'css/light.css' %}">
{% endif %
Вы можете отслеживать darkmode
в сессии следующим образом:
if request.POST.get('darkmode'):
request.session['darkmode'] = True
Вам придется отправить darkmode
в представление в POST-запросе. Поскольку вы не используете javascript, вам, вероятно, понадобится представление только для установки darkmode и перенаправления на другое представление.
Другой вариант - добавить darkmode
как поле в модель User, чтобы оно всегда сохранялось для текущего пользователя после его установки.