【问题标题】:Can i switch of <link href=""> using django?我可以使用 django 切换 <link href=""> 吗?
【发布时间】:2021-08-03 02:49:16
【问题描述】:

是否可以使用 django 框架制作一个切换按钮来更改我的样式表?

''' 例如,在我的头 html 中,我得到了这个:

<link href="{% static 'website/assets/css/style_dark.css' %}" rel="stylesheet">

如果我的按钮(在主体 html 上被点击),我想得到下面的样式表

<link href="{% static 'website/assets/css/style_light.css' %}" rel="stylesheet">

'''

【问题讨论】:

  • 通常您只定义 CSS 选择器,仅当按钮处于活动状态时才处于活动状态,反之亦然。
  • 能否请你给我一个例子,以便我可以应用它?我有困难(感谢您的帮助)

标签: django button frameworks conditional-statements stylesheet


【解决方案1】:

如果不重新加载页面,它将无法正常工作。 (因为 Django 在渲染页面时会放置这些东西)。

另一种方法可以添加按钮单击带有参数的 URL(例如&lt;a href="/?style={{ style }}"&gt;),这将导致相同的视图。 所以在 Django 中,当使用这个参数调用视图时——你就可以了:

def my_view(request):
    style = request.GET.get('style')
    if style == 'dark':
        context['style'] == 'light'
    elif style == 'light':
        context['style'] == 'dark'
    return HttpResponse(loader.get_template('template.html').render(context, request))
    

在模板中:

<link href="{% static 'website/assets/css/style_{{ style }}.css' %}" rel="stylesheet">

不过,这是一种变通方法。 (最好在前端做这样的事情)。但总的来说,它应该可以解决问题。

【讨论】:

  • 我认为我可以在您的帮助下将其集成到我的项目中!谢谢朋友!
  • @JonathanMichel,不客气。您也可以考虑在 Cookies 中传递此参数而不是 URL 参数
  • 我也会做这个,这是一个学习的好主意,谢谢!我仍然想从你的例子中学习,然后尝试整合它,但它现在是一场真正的战斗 xD 我会继续努力让它发挥作用!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-12-29
  • 1970-01-01
  • 1970-01-01
  • 2021-10-25
  • 1970-01-01
  • 2018-08-02
  • 1970-01-01
相关资源
最近更新 更多