一、项目预览

  1.在创建项目之前,必须先进入虚拟环境,因为我们的包安装在我们的虚拟环境中,不在我们的中环境中

    >>> ./venv/Scripts/activate

  2.创建一个项目

    >>> django-admin startproject bbs

  3、项目结构

    

    bbs 项目文件夹

     bbs/bbs

     bbs/manage.py 项目命令入口,一般我们在项目中执行命令都是python manage.py [+命令]

     bbs/bbs/__init__.py 表示内部的bbs是一个python包

     bbs/bbs/asgi

     bbs/bbs/settings 项目的配置文件

     bbs/bbs/urls.py 项目的主路由

     bbs/bbs/wsgi.py

  4.创建一个App(应用)

  应用一般指的是一个网页主页的导航部门,每一个导航可以被称之为一个应用,一般是一个构建一个功能的页面集合体

  >>>  cd bbs

  >>> python manage.py startapp article

  

  执行完命令后,就会生成上面的一个名为article的包

    article/migrations 里面将会存放数据库迁移文件

    article/__init__.py 标识是一个包

    article/admin.py 注册数据表到django自带的admin后台界面

    article/apps.py

    article/models.py 该应用的数据表对应的ORM类

    article/test.py 测试文件

    articel/views.py 视图函数文件

  一般会在每个包里都自建一个urls.py,为该包的路由

二、浏览器与django运行项目的交互过程

  >>> python manage.py  runserver (启动项目)

   

 当我们在浏览器的地址栏输入127.0.0.1:8000时,浏览器就会向本地的8000端口发送一个HTTP请求,而我们的django项目刚好运行在这个端口,就会接受到这个

请求,经过解析后,就会找到urls.py文件中对应的路由,总是先经过与项目名称相同的包下面的urls.py中查找,找到对应的路由后,与之相对应的视图函数就会被调用

返回一个HTTP响应,浏览器接收到后,就会把它渲染到页面上

  

  

django之初建项目的更多相关文章

  1. Vue学习笔记(五)——配置开发环境及初建项目

    前言 在上一篇中,我们通过初步的认识,简单了解 Vue 生命周期的八个阶段,以及可以应用在之后的开发中,针对不同的阶段的钩子采取不同的操作,更好的实现我们的业务代码,处理更加复杂的业务逻辑. 而在这一 ...

  2. Django边学边记—新手Django建项目各流程细节

    一.准备虚拟环境 1)安装 virtualenv pip install virtualenv 2)virtualenvwrapper pip install virtualenvwrapper-wi ...

  3. IDEA 初建Spring项目(Hello Spring)

    新建项目 在文件夹中建立一个项目文件 打开项目 打开IDEA,点击Open,根据所建项目路径找到该项目 依赖注入 点击项目名右键,点击new,点击file,创建pom.xml 内容为: <pro ...

  4. 初建FreeMarker工程

    初建FreeMarker工程 ——@梁WP 背景:听说freemarker可以用来写页面的组件,热衷于编写可重用代码的我,迫不及待地研究了freemarker,不过,在写组件之前,还是先研究一下fre ...

  5. Django之初

    Django之初 Django的开始: #安装Django: pip3 install django #创建Django项目: django-admin startproject 项目名 #比如: d ...

  6. Django 资源 与 知识 Django中自建脚本并使用Django环境 model中的save()方法说明 filter()用法

    Django 资源 与 知识 Django中自建脚本并使用Django环境 model中的save()方法说明 filter()用法 2018/11/06 Chenxin 资料说明 Django基础入 ...

  7. ReactNative新手学习之路01-创建项目开始

    新手学习之路01-创建项目开始 小菜鸟准备学习RN开发,决定写下自己的学习历程,方便其他也想要学习RN的人,后期会持续更新写下自己所有学习经历,一步步从菜鸟成长成业内高手.开发环境准备,本文默认环境已 ...

  8. IDEA建项目的正确姿势

    今天建多模块的分布式项目的时候折腾死了,可能是建项目的方法不对,最后经过摸索,觉得这样是比较合适的: 首先建一个空的项目:Empty Project,就是项目文件夹 然后在里面建model

  9. 12:django 模板 内建过滤器

    django 模板 内建过滤器 add{{ value|add:"2" }} 对象的加法,如果都是整数类型,简单的算术加法:如果是列表,则是列表的相加 如果无法执行对象的相加,比如 ...

随机推荐

  1. mysql查看变量

    在MySQL客户端执行如下命令查看MySQL的数据存放位置: show global variables like "%datadir%"; 查看端口号 show global v ...

  2. elasticsearch minhash 测试应用

    上一章看了代码实现,算是搞明白了各参数的意义,现在开始测试,为方便以ik分词示例(对elasticsearch支持较好,测试操作简单) 首先建index,自定义 analysis ik分词用 ik_s ...

  3. Codeforces 1295D Same GCDs

    题目链接 link Solution 这是一道结论题,有两个做法,分别用了欧拉函数或一点点莫比乌斯反演 (这里只放欧拉函数的做法) 设\(d=gcd(m,a)\) \[gcd(\frac{a}{d}, ...

  4. 牛客-牛牛的Link Power II

    题目传送门 sol:可以用线段树来维护,线段树的节点除了标配的$l$和$r$同时记录该区间$link$的个数记为$cnt$,该区间$link$点的和记为$sum$,该区间题目中所谓的能量记为$dis$ ...

  5. 基于rtmp的移动端推流解决方案

    因工作需要,及考虑成本因素,需要探索一套免费的移动端基于rtmp推流的直播解决方案,过程虽稍显曲折,但最终还是完成了目标.在这里将记录下来,以便日后查阅. 总体思路 移动端推流(RTMP) ---&g ...

  6. [LC] 273. Integer to English Words

    Convert a non-negative integer to its english words representation. Given input is guaranteed to be ...

  7. 计算a^b==a+b在(l,r)的对数Codeforces Round #597 (Div. 2)

    题:https://codeforces.com/contest/1245/problem/F 分析:转化为:求区间内满足a&b==0的对数(解释见代码) ///求满足a&b==0在区 ...

  8. poj 1463树形dp 树的最小覆盖

    #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #i ...

  9. [LC] 557. Reverse Words in a String III

    Given a string, you need to reverse the order of characters in each word within a sentence while sti ...

  10. Oracle中实现sql查询得到连续号码段

    一.表名为t的表中数据如下: select * from t; FPHM KSHM ---------- ---------- 实现代码如下: select b.fphm,min(b.kshm),ma ...