day60

从系统中选择已存在的解释器。

新建Django项目
        命令行创建:
            django-admin startproject mysite
        pycharm创建:
            1. File --> New project --> 左侧选Django --> 右侧填项目路径,并且勾选python.exe(windows下)
        
        设置Django项目:
        1. settings.py
            1. 配置HTML文件存放的位置
            2. 配置静态文件存放的位置

终端启动

也可在Pycharm中启动。

设置Django项目:
        settings.py
            1. 配置HTML文件存放的位置
            2. 配置静态文件存放的位置

页面放入templates中,静态文件依赖放入static中

setting.py下面需要设置

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.11/howto/static-files/ # 静态文件保存目录的别名
STATIC_URL = '/static/' # 所有静态文件(css/js/图片)都放在我下面你配置的文件夹中
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static")#拼接 mysite/static
]

页面中调用部分需加上/static/

<script src="/static/jquery-3.2.1.min.js"></script>
<script src="/static/bootstrap/js/bootstrap.min.js"></script>
</body>
</html>

url.py部分

 from django.conf.urls import url
from django.contrib import admin
from django.shortcuts import HttpResponse,render def yimi(request):
# request参数保存了所有和用户浏览器请求相关的数据
# return HttpResponse('hello yimi!') #不用自己设置状态码,响应头 ####################################################################
# with open("templates/yimi.html", "r", encoding="utf-8") as f:
# data = f.read()
# return HttpResponse(data)
#######################################################################
'''上下方法一样'''
return render(request, "yimi.html")#只需写yimi.html,自己会去templates下找 def xiaohei(request):
# request参数保存了所有和用户浏览器请求相关的数据
return HttpResponse('hello xiaohei!') def login(request):
return render(request, "login.html") #保存路径和函数的对应关系
urlpatterns = [
url(r'^yimi/', yimi), #路径,函数
url(r'^xiaohei/', xiaohei),
url(r'^login/', login)
]

结果:

day60内容回顾

1. 内容回顾
 
    1. HTTP协议消息的格式:
        1. 请求(request)
            请求方法 路径 HTTP/1.1\r\n
            k1:v1\r\n
            ...\r\n
            \r\n
            请求体        <-- 可以有,可以没有
        
        2. 响应(response)
            HTTP/1.1 状态码 状态描述符\r\n
            k1:v1\r\n
            Content-Type: text/html; charset=utf8\r\n
            \r\n
            响应正文       <-- HTML内容
 
    2. Python web框架的本质:
        a. 收发socket消息    --> 按照HTTP协议消息格式去解析消息
        
        b. 路径和要执行的函数的对应关系   --> 主要的业务逻辑
        
        c. 字符串替换                     --> 模板(特殊符号 --> 数据)
        
    3. 一个完整得请求流程:
        0. 启动服务端,等待客户端(用户的浏览器)来连接
        1. 在浏览器地址栏输入URL,与服务端建立连接,浏览器发送请求
        2. 服务端收到请求消息,解析请求消息,根据路径和函数的对应关系,找到将要执行的函数
        3. 执行函数,打开HTML文件,进行字符串替换,得到一个最终要返回的HTML内容
        4. 按照HTTP协议的消息格式要求,把HTML内容回复给用户浏览器(发送响应)
        5. 浏览器收到响应的消息之后,按照HTML的规则渲染页面.
        6. 关闭连接
        
    
2. Django昨日内容梳理:
    0. Django安装
        pip3 install django==1.11.11
        
        pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ django==1.11.11
    
        PyCharm安装的时候:
            注意不要勾选那个选项 (你们懂得)
 
    1. Django项目的启动:
        1. 命令行启动
            在项目的根目录下(也就是有manage.py的那个目录),运行:
            python3 manage.py runserver IP:端口--> 在指定的IP和端口启动
            python3 manage.py runserver 端口   --> 在指定的端口启动
            python3 manage.py runserver        --> 默认在本机的8000端口启动
        
        2. PyCharm启动
            点绿色的小三角,直接可以启动Django项目(前提是小三角左边是你的Django项目名)
        
    2. 配置相关   项目名/settings.py文件
        1. Templates(存放HTML文件的配置)       <-- 告诉Django去哪儿找我的HTML文件
        
        2. 静态文件(css/js/图片)
            # 静态文件保存目录的别名
            STATIC_URL = '/static/'
 
            # 所有静态文件(css/js/图片)都放在我下面你配置的文件夹中
            STATICFILES_DIRS = [
                os.path.join(BASE_DIR, "static"),
            ]
        3. 注释掉setting.py中 带有 csrf 的那一行(大概45~47行)

Django安装(第一个项目)的更多相关文章

  1. Django 创建第一个项目(转)

    转自(http://www.runoob.com/django/django-first-app.html) 前面写了不少python程序,由于之前都是作为工具用,所以命令行就足够了,最近写的测试用例 ...

  2. django创建第一个项目helloworld

    环境:centos 7,已安装python 3.6环境 1.安装django并创建django第一个项目 1.1.使用pip安装django# pip install Django或指定安装版本# p ...

  3. python+Django创建第一个项目

    1.首先搭建好环境 1.1 安装pyhton,Linux系统中,python是系统自带的所以就不用安装 1.2 安装Django框架 使用pip安装: pip install django 1.3 检 ...

  4. 吴裕雄--天生自然Django框架开发笔记:Django 创建第一个项目

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

  5. 【3】Django创建第一个项目

    天地所以能长且久者,以其不自生,故能长生. --老子<道德经> 写在前面:Django在学习的过程中,我们会参考官方文档,从两部分进行讲解,第一部分主要是一个入门项目的搭建开发,第二部分是 ...

  6. Django安装与创建项目

    下载 https://media.djangoproject.com/releases/1.11/Django-1.11.20.tar.gz 解压 tar -zvxf Django-1.11.20.t ...

  7. Python使用Django创建第一个项目

    一 必要环境安装 1首先确保安装了Python3,在此使用的系统为Ubuntu @ubuntu:~$ python3 Python 3.6.7 (default, Oct 22 2018, 11:32 ...

  8. Django 创建第一个项目

    创建项目: [root@localhost ~]$ django-admin.py startproject web # web是项目名 [root@localhost ~]$ tree web/ w ...

  9. django 第一个项目测试

    我们安装好Django以后就可以使用Django命令来创建项目了 1.Django 创建第一个项目 安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin.py.我们可以 ...

随机推荐

  1. swagger ui js 错误:Failed to execute 'serializeToString' on 'XMLSerializer': parameter 1 is not of type 'Node'.

    经过排查,引发此错误的原因是,表中有一个字段名称为“NodeName”,应该是在前台xml解析时引发冲突所致.我的解决办法是: 修改列名,修改映射. 如下: [Column("NodeNam ...

  2. sql ltrim/rtrim 字段中为中文时出现?的问题

    字段存储为中文,类型为nvarchar,使用ltrim时结果集中出现的问号,我的解决办法是:将问号replace掉

  3. Scrum 团队成立 -- 软件工程

      团队项目选题  : 金融工具:复利计算与投资记录项目继续升级,开发定位明确.功能专注的工具类软件 团队队员 : 蔡舜 , 林宇粲 , 王昕明 , 卢晓洵 团队目标 : 不断完善 团队口号 : 永不 ...

  4. 数学整合 新(LUOGU)

    1.卡特兰数(P2532) 递推式:h(n)=C(2n,n)/(n+1) (n=0,1,2,...) 前十项(从零开始):1, 1, 2, 5, 14, 42, 132, 429, 1430, 486 ...

  5. bat 调用exe

    @set errorlevel=>nul :reInput @echo 请输入批次号: @set/p 批次号= >nul @set 批次号|findstr "\\<%sea ...

  6. webapp的优化总结

    1. 最先加载本地数据,下拉刷新再取最新数据. 2. 图片延后加载.一种方法先<div data-url="xx.png"></div>,先加载一个div, ...

  7. 【JS】判断浏览器类型

    判断原理 JavaScript是前端开发的主要语言,我们可以通过 编写JavaScript程序来判断浏览器的类型及版本.JavaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性 ...

  8. Linux应用开发入门(转)

    今天偶然看到这篇文章,做个入门了解还是不错的. 前一阵子在QQ上和朋友聊天的时候,总会看到有人说Linux上的应用程序开发是高手才可以完成的,而且这种“迷信”在目前似乎还很普遍.然而,情况并不是这样的 ...

  9. 2018.09.24 codeforces 1053C. Putting Boxes Together(线段树)

    传送门 就是让你维护动态的区间带权中位数. 然而昨晚比赛时并没有调出来. 想找到带权中位数的中点可以二分(也可以直接在线段树上找). 也就是二分出第一个断点,使得断点左边的和恰好大于或等于断点右边的和 ...

  10. hdu-2955(01背包+逆向思维+审题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2955 思路:注意p和m[i]是被抓的概率,不能直接用,要转换为逃跑的概率,然后将得到的钱视为背包体积再 ...