社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Django

如何在Django的HTML模板中设置会话变量?

jfk83 • 4 年前 • 636 次点击  

我试图在模板中设置Django会话的值,然后在视图中使用posible。

我在做这样的事

{% block body %}
    <html>
     {%  request.session.fav_color="red"  %}

    <div> Is your favorite color {{ request.session.fav_color}} ?</div>

  </html>
{% endblock %}  
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/50808
 
636 次点击  
文章 [ 1 ]  |  最新文章 4 年前
Paulo Scardine
Reply   •   1 楼
Paulo Scardine    5 年前

这可能不是个好主意,原因如下:

  • 模板应该只处理演示文稿。如果在模板中放置逻辑,则应该是表示逻辑。将业务逻辑放在模板中违反了SoC(关注点分离)。

  • 在视图中渲染模板通常是最后要做的事情之一,因此如果您已经将数据发送到浏览器,则很难将cat恢复到包中(如果您渲染了模板,但尚未将数据发送到管道中,则可以只更新视图中的值,而不是尝试在模板中执行该操作)。

如果您正在与用户交互,传统的方式是使用表单(即使是只有submit按钮的表单),或者使用AJAX将数据发布到前端的服务器。