3、django视图的响应和模板的继承

匿名 (未验证) 提交于 2019-12-03 00:08:02

1、django视图的响应

  在view中。response有三种方式

  1、HttpResponse:返回字符串---不常用

  2、redirect:重定向---特定场景使用

    return redirect(‘/index/’)  

  3、render:可返回页面+参数---最常用

    render如果带参数,则会首先读取html文件,其次渲染变量参数。

def index(request):     list = ['苹果', '香蕉', '萝卜']     return render(request, 'index.html', {"sp": list})

    如上:views文件中index函数不仅返回了一个html,还带了一个list。

<body> <h1>hello world</h1>     <h3>商品列表</h3>         <ul>             {% for foo in sp %}                 <li>{{ foo }}</li>             {% endfor %}         </ul> </body>

    然后在html中使用for循环取值,并展示。

    {{}}:表示渲染变量

    {%%}:表示渲染标签。

    当然这里不仅可以循环取值。还可以做一些简单判断的。(个人觉得用处不大。逻辑还是放在views处理比较好)

    展示效果如下:

    

2、django模板的继承

  在一般的网站中,很多不同页面很多地方都是一致的。如顶部导航栏,侧边导航栏,底部等等。这些地方我们没有必要每次都去写一份一摸一样

  的代码。django可以继承模版。

  1、首先写一个母版,新增一个base。所有不用变动的区域代码copy进去,需要变动的用盒子装起来。代码截图如下:

  

  

  

  注:发送请求的几个方式。

    1、游览器发送get请求

    2、form表单提交get或者post请求

    3、a标签发送get请求

    4、ajax发送各种请求    

  

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!