微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

day84-2 django基础

一个强大的web框架

django的安装和启动

django的安装:

  1. cmd中输入pip3 install django==1.11.22(注意添加版本号,这个版本比较稳定,当前最新是2.x版本,但是bug较多) -----> 推荐
  2. pycharm安装

django的创建:

  1. cmd中输入django-admin startproject 文件(在你cmd的目录下创建)
  2. pycharm创建 -----> 推荐
  • 注意:创建好之后不要乱改

django目录结构

  • 文件名以day54为例
  • 创建好之后不要乱改名字
|-day54
    |- day54
        |- settings.py:配置文件
        |- urls.py:路由映射关系
        |- wsgi.py:socket服务端文件
    |- manage.py:管理文件
    |- templates:模版文件,比如html就是模版文件
    |- status:存放一些静态文件(静态资源)
        |- css
        |- js
        |- img
  • 注意:django的启动,是在pycharm的上方启动那个文件夹名的东西

django的路由介绍

# 在urls.py文件中

# 参数一定要写request
def index(request): 
    return HttpResponse('index')

# url中填写的是一个正则表达式
urlpatterns = [
    # url(r'^admin/',admin.site.urls),url(r'^index/',index),]

django的模版介绍

  • 数据库中取出来数据,传到网页上,称之为渲染,模版渲染,其中模版是html页面
  • 渲染:将服务端处理好的东西,渲染到客户端,网页中
# 模版渲染函数
# python
def f1(request):
    ### 变量的渲染
    name = 'zekai'

    ### 列表
    li = ['zekai','lxxx','leijun']

    ### 字典
    dict = {"name":'zekai','age':18,'hobby':'bj'}

    ### 列表中套字典
    myli = [
        {'id': 1,'name': 'zekai','age': 12},{'id': 2,'name': 'yuechun','age': 32},{'id': 3,'name': 'lifu','age': 23}
    ]

    # 在settings中已经进行了路径配置,可以直接写templates中的html文件
    return render(request,'f1.html',{"xxx":name,"li":li,'dict':dict,'myli':myli})
<!-- html -->
<!DOCTYPE html>
<html>
<head>
    <Meta charset="utf-8">
    <title>Title</title>
</head>
<body>
{# 变量渲染 #}
    <h2>{{ xxx }}</h2>
{#列表的渲染#}
<ul>
    <li>{{ li.0 }}</li>
    <li>{{ li.1 }}</li>
    <li>{{ li.2 }}</li>
</ul>

<hr>
{#列表的循环#}
<ul>
    {% for items in li %}
        <li>{{ items }}</li>
    {% endfor %}
</ul>

{#字典的渲染#}
<h3>{{ dict.age }}</h3>

{#字典的循环#}
<ul>
    {% for items in dict.values %}
        <li>{{ items }}</li>
    {% endfor %}
</ul>

<ul>
    {% for items in dict.keys %}
        <li>{{ items }}</li>
    {% endfor %}
</ul>

<ul>
    {% for key,val in dict.items %}
        <li>{{ key }} --- {{ val }}</li>
    {% endfor %}
</ul>

{#列表中套字典格式#}
<table border="1px">
    <thead>
        <tr>
            <th>id</th>
            <th>name</th>
            <th>age</th>
        </tr>
    </thead>
    <tbody>
        {% for items in myli %}
            <tr>
                <td>{{ items.id }}</td>
                <td>{{ items.name }}</td>
                <td>{{ items.age }}</td>
                <td><a href="/f2/">删除</a></td>
            </tr>
        {% endfor %}

    </tbody>
</table>


</body>
</html>

创建django项目的时候,需要做的几个操作

# 到settings.py中, 配置:
# 1. 最后
STATIC_URL = '/static/'
STATICFILES_Dirs = (
    os.path.join(BASE_DIR,'static'),)
# 逗号不能少,只能是STATICFILES_Dirs,不能修改
# static目录需要创建
                
# 2. MIDDLEWARE中
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware',#'django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware',]
                
#3. TEMPLATES中
'Dirs': [os.path.join(BASE_DIR,'templates')]

待学

学一下FTP协议还有SMTP。

阿帕奇是什么

重新去复习一下url

hexo+gitee搭建博客

什么叫路由,什么叫接口

django中的函数不是串行的,url中的参数,认只会传一个request,可以用括号控制参数。括号里的内容,就是参数内容,几个括号,几个参数。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐