• Django学习篇(第二部)


    
    
    4、Django

    pip3 install django


    C:Python35Scripts

    # 创建Django工程
    django-admin startproject 【工程名称】

    mysite
    - mysite # 对整个程序进行配置
    - init
    - settings # 配置文件
    - url # URL对应关系
    - wsgi # 遵循WSIG规范,uwsgi + nginx
    - manage.py # 管理Django程序:
    - python manage.py
    - python manage.py startapp xx
    - python manage.py makemigrations
    - python manage.py migrate
    # 运行Django功能
    python manage.py runserver 127.0.0.1:8001

    chouti
    - chouti
    - 配置
    - 主站 app
    - 后台管理 app



    # 创建app
    python manage.py startapp cmdb
    python manage.py startapp openstack
    python manage.py startapp xxoo....


    app
    migrations 数据修改表结构
    admin Django为我们提供的后台管理
    apps 配置当前app
    models ORM,写指定的类 通过命令可以创建数据库结构
    tests 单元测试
    views 业务代码



    1、配置模板的路径

    TEMPLATES = [
    {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [os.path.join(BASE_DIR, 'templates')],
    'APP_DIRS': True,
    'OPTIONS': {
    'context_processors': [
    'django.template.context_processors.debug',
    'django.template.context_processors.request',
    'django.contrib.auth.context_processors.auth',
    'django.contrib.messages.context_processors.messages',
    ],
    },
    },
    ]
    2、配置静态目录
    static

    STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
    )


    <link rel="stylesheet" href="/static/commons.css" />

    一个完整的Django项目,步骤

    1.
    创建Django工程
    django-admin startproject 工程名

    2. 创建APP
    cd 工程名
    python manage.py startapp cmdb

    3、静态文件
    project.settings.py

    STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
    )

    4、模板路径

    DIRS ==> [os.path.join(BASE_DIR,'templates'),]

    5、settings

    middlerware

    # 注释 csrf


    6、定义路由规则
    url.py

    "login" --> 函数名

    7、定义视图函数
    app下views.py

    获取页面信息方法:GET和POST方法:


    def func(request):
    # request.method GET / POST

    # http://127.0.0.1:8009/home?nid=123&name=alex
    1、 # request.GET.get('',None) # 获取请求发来的而数据

    2、# request.POST.get('',None)


    # return HttpResponse("字符串")
    # return render(request, "HTML模板的路径")
    # return redirect('/只能填URL')

    8、模板渲染
    特殊的模板语言

    -- {{ 变量名 }}

    def func(request):
    return render(request, "index.html", {'current_user': "alex"})


    index.html

    <html>
    ..
    <body>
    <div>{{current_user}}</div>
    </body>

    </html>

    ====> 最后生成的字符串

    <html>
    ..
    <body>
    <div>alex</div>
    </body>

    </html>
    -- For循环
    def func(request):
    return render(request, "index.html", {'current_user': "alex", 'user_list': ['alex','eric']})


    index.html

    <html>
    ..
    <body>
    <div>{{current_user}}</div>

    <ul>
    {% for row in user_list %}

    {% if row == "alex" %}
    <li>{{ row }}</li>
    {% endif %}

    {% endfor %}
    </ul>

    </body>

    </html>

    #####索引#################
    def func(request):
    return render(request, "index.html", {
    'current_user': "alex",
    'user_list': ['alex','eric'],
    'user_dict': {'k1': 'v1', 'k2': 'v2'}})


    index.html

    <html>
    ..
    <body>
    <div>{{current_user}}</div>

    <a> {{ user_list.1 }} </a>
    <a> {{ user_dict.k1 }} </a>
    <a> {{ user_dict.k2 }} </a>

    </body>

    </html>

    ###### 条件

    def func(request):
    return render(request, "index.html", {
    'current_user': "alex",
    "age": 18,
    'user_list': ['alex','eric'],
    'user_dict': {'k1': 'v1', 'k2': 'v2'}})


    index.html

    <html>
    ..
    <body>
    <div>{{current_user}}</div>

    <a> {{ user_list.1 }} </a>
    <a> {{ user_dict.k1 }} </a>
    <a> {{ user_dict.k2 }} </a>

    {% if age %}
    <a>有年龄</a>
    {% if age > 16 %}
    <a>老男人</a>
    {% else %}
    <a>小鲜肉</a>
    {% endif %}
    {% else %}
    <a>无年龄</a>
    {% endif %}
    </body>

    </html>



    1、不要选择满足,要选择最优。
    2、时间要有节奏感。
    3、思考从本质出发。
    4、做困难的事情。
    5、学习的习惯。
  • 相关阅读:
    学习bn算法
    记录pytorch的几个问题
    Python: 你不知道的 super
    cmd里面怎么复制粘贴
    tensorflow的transpose
    应该做一个软件,直接把视频里面的英语,转换成字幕,然后翻译
    继续修改,爬虫贴吧,上次的每次只取一个图片.
    Deleting elements
    Map, filter and reduce
    List methods
  • 原文地址:https://www.cnblogs.com/1314520xh/p/8978537.html
Copyright © 2020-2023  润新知