• Django入门


    一、概述

      什么是Django?

        基于的python的高级web开发框架(类比Java的spring等)

    二、环境搭建

      环境要求:python + Django

      Python与Diango版本匹配:https://www.runoob.com/django/django-tutorial.html

      使用pip安装Django:

        安装较慢容易失败,请使用豆瓣的镜像:

    pip install django==1.11.7 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

         检测是否安装成功:

          python -m django --version

        这样就成功安装了

     三、创建项目

      安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin。我们可以使用 django-admin 来创建一个项目:

        在想创建的目录下按住shift + 右键进入cmd,执行命令:

    django-admin startproject myblog

        这样就创建了一个名为myblog的项目

        其中,目录下的manage.py是个很有用的工具,可以把它当作项目管理器,作为项目和命令行的衔接口:

        

         它可以用来启动内置的服务器:

    python3 manage.py runserver [8000]
    python manage.py runserver [8000]

        默认端口是8000,可以手动指定端口

         关闭命令行窗口(linux : Ctrl + C)即可停止服务器

      注意:

        本机安装的conda出现执行上述命令无反应

        解决方式:程序中进入 conda的prompt,切换目录再执行:

        

       这样,连接就能正常访问了!

       再一个重要的文件是项目的配置文件:settings.py

        https://zhuanlan.zhihu.com/p/50308750

    四、创建应用

      参考第三章,在同级目录使用命令创建应用:

    python manage.py startapp blog

      然后在settings.py中INSTALLED_APPS添加这个应用

      

       在blog的views下创建第一个页面响应:

        

         在urls中配置链接:

        

         重新启动,访问地址:

     

     五、模板

      上述第四节中返回文字当然是不合实际情况的,正常应该是返回页面的

      还有一个要改进的是URL的配置,因为像上面的配置文件,明显可以看到,所有url都放根目录的话,如果有10个应用,每个500URL,那URL

    将会非常多,而且也容易重名,所以我们采取注释中,第二种形式:include

      总urls的改造:

      

       在blog应用下再新建urls.py文件进行配置:

      

       这样,访问/blog/index即可!

       模板语言

        Django有内置的模板引擎,称之为DTL,这和Java的模板引擎是类似的,当然,著名的还有第三方模板引擎:Jinja2

        在settings中配置即可:

        

       模板语言的语法大同小异,这里不再赘述:https://www.runoob.com/django/django-template.html

      实际操作步骤:

        在blog这个APP下创建目录:templates,用于放html文件

        在此目录下创建HTML文件:index.html

      

        在views.py中使用reder()函数渲染:

           return render(request, 'hello.html', context)

          通常前两个是必须的,最后一个是字典,用于返回前端的值(名代表参数名,值代表参数值)

        

       再访问/blog/index即可查看效果!

      // 有时候可能有不同应用的重名html文件冲突问题,解决办法:在templates下再新建一个和APP同名的目录,将HTML文件放入即可

     六、模型

      通常情况下,一个模型Model对应数据库的表,在Python中以类来表示,通过操作对象来操作数据

      内置的ORM框架给开发带来了不少的便利(当然,隐藏SQL是否真的好因人而异)

      

  • 相关阅读:
    Method总结
    使用CSS的五种方式
    debug js code
    Overload
    fiddler模拟弱网测试
    POJ 1753 Flip Game (IDA*)
    UVA 11400 Lighting System Design(照明系统设计)(dp)
    UVA 12563 Jin Ge Jin Qu hao(劲歌金曲)(01背包+滚动数组)
    UVA 116 Unidirectional TSP (单向TSP)(dp多段图的最短路)
    UVA 1151 Buy or Build (买还是建)(并查集+二进制枚举子集)
  • 原文地址:https://www.cnblogs.com/jiangbei/p/12349282.html
Copyright © 2020-2023  润新知