Django目录结构分析
Django目录结构分析:
Django的Linux项目目录记录
[root@cmdb Django]# tree mysite
mysite
├── cmdb
│ ├── admin.py # 配置Django自带的后台管理
│ ├── apps.py # 对当前app(cmdb)进行配置
│ ├── migrations # 处理数据库的记录
│ ├── models.py # 数据库管理文件 (对数据库的增删改查)
│ ├── tests.py # 单元测试
│ └── views.py # 业务处理,视图函数
├── mysite # 项目目录
│ ├── __init__.py # Django内部连接MySQL时使用的是MySQLdb模块,而python3中还无此模块,所以需要使用pymysql来代替,在此文件中导入pymysql模块
│ ├── settings.py # 整体配置文件
│ ├── urls.py # 配置url对应关系
│ └── wsgi.py # Django基于wsgi基础上开发的
├── db.sqlite3 # sqlite3数据库,默认自带
├── manage.py # 管理当前project 的程序 (可以创建 app,启动Django等)
├── static # 静态文件目录
│ ├── bootstrap
│ │ ├── css
│ │ │ ├── bootstrap.css
│ │ │ └── bootstrap-theme.min.css
│ │ ├── fonts
│ │ │ └── glyphicons-halflings-regular.woff2
│ │ └── js
│ │ ├── bootstrap.js
│ │ └── jquery-1.12.4.js
│ └── img
│ └── 1.jpg
└── templates # html文件所在的位置目录templates
├── bootstrap.html
└── index.html # html文件
Django的安装
1.安装命令:
pip3 install django
2.默认安装在Python36安装目录下的Scripts目录下:
C:\Users\admin\AppData\Local\Programs\Python\Python36\Scripts
可执行文件:django-admin
默认是加入环境变量中的;
3.项目解析:
整体项目为 project 平台
包含配置文件
管理文件
项目内部每个模块为 app app01-cmdb (模块--处理业务逻辑)
app02-monitor
基本操作:
命令行:
1.创建:project
cd D:/libaolin/
django-admin startproject mysite # 创建一个项目目录
mysite # 目录内包含以下两个文件
-mysite # 目录内为 配置文件
- settings.py # 整体配置文件
- urls.py # 配置url对应关系
- wsgi.py # Django基于wsgi基础上开发的
-manage.py # 管理当前project 的程序
2.运行:
cd mysite
python manage.py runserver 127.0.0.1:8000
3.创建两个app
python manage.py startapp cmdb # 创建一个资产管理 app
python manage.py startapp monitor # 创建一个 监控的 app
4.查看cmdb目录的结构
cd cmdb
cmdb
- migrations # 目录处理数据库的
- models.py # 数据库管理文件 (对数据库的增删改查)
- admin.py # 配置Django自带的后台管理
- apps.py # 对当前app(cmdb)进行配置
- tests.py # 单元测试
- views.py # 业务处理 (针对数据库对业务处理)
通过Django创建一个简单的页面
1.编辑路由文件
urls.py
from django.conf.urls import url
from django.contrib import admin
from cmdb import views # 将处理请求放在app的views中
urlpatterns = [
# url(r'^admin/', admin.site.urls),
url(r'^index/', views.index), # 一条路由映射,指向views 中的 index 函数
]
2.编辑视图文件
views.py
from django.shortcuts import render
from django.shortcuts import HttpResponse
# index函数至少有一个 参数 (request)
# request 封装了用户请求的相关信息
def index(request):
print(request.GET) # 通过GET方式获取用户提交的数据
return HttpResponse("<h1 style=""color:red;>OK</h1>") # 返回给用户数据,可以定制 css 样式
#return render(request,"index.html") # 直接返回给用户一个 html 的页面
3.运行Django程序:
cd mysite
python manage.py runserver 127.0.0.1:8000
4.通过url请求:
并且通过get方式提交了两个数据:
http://127.0.0.1:8000/index/?v1=123&v2=pwd
5.视图函数views 获取数据:
用户提交的数据封装在 request 中,GET可以获取URL内部的数据:
<QueryDict: {'v1': ['123'], 'v2': ['pwd']}>
Django目录结构分析的更多相关文章
- Android项目目录结构分析
Android项目目录结构分析 1.HelloWorld项目的目录结构1.1.src文件夹1.2.gen文件夹1.3.Android 2.1文件夹1.4.assets 1.5.res文件夹1.6.An ...
- django目录下的各文件
本文部分转载. 使用Python setup.py install命令从源代码安装完Django后,这些都会被拷贝到Python安装目录下的Lib/site-packages/django子目录中.之 ...
- phpcms v9框架的目录结构分析
phpcms v9框架的目录结构分析: 了解v9框架的目录结构,有助于帮助我们快速建立起对v9框架的一个整体认识 打开"mycms"项目,有如下文件和目录 使用 ...
- 手机自动化测试培训:appium目录结构分析
手机自动化测试培训:appium目录结构分析 移动端的自动化测试越来越普遍,poptest率先退出移动端自动化测试的课程,以appuim的python脚本版本作为授课基础,后期陆续退出java版本 ...
- 第三百零六节,Django框架,models.py模块,数据库操作——创建表、数据类型、索引、admin后台,补充Django目录说明以及全局配置文件配置
Django框架,models.py模块,数据库操作——创建表.数据类型.索引.admin后台,补充Django目录说明以及全局配置文件配置 数据库配置 django默认支持sqlite,mysql, ...
- Vue 目录结构分析 数据绑定 绑定属性 循环渲染数据 数据渲染
一.目录结构分析 node_modules 项目所需要的各种依赖 src 开发用的资源 assets 静态资源文件 App.vue 根组件 main.js 配置路由时会用 .babelrc 配置文件 ...
- vue2.* 目录结构分析 数据绑定 循环渲染数据 数据渲染02
一.目录 结构分析 node_modules:项目依赖文件(也可以说是模块) src:开发时所用的资源 assets:静态资源文件 App.vue:根组件(最基础的公共页面) main.js:实例化v ...
- 四 Django框架,models.py模块,数据库操作——创建表、数据类型、索引、admin后台,补充Django目录说明以及全局配置文件配置
Django框架,models.py模块,数据库操作——创建表.数据类型.索引.admin后台,补充Django目录说明以及全局配置文件配置 数据库配置 django默认支持sqlite,mysql, ...
- ionic小白的学习路之目录结构分析、创建组件、创建页面、页面跳转
一. 目录结构分析 hooks:编译cordova 时自定义的脚本命令,方便整合到我们的编译系统和版本控制系统中. node_modules :node 各类依赖包. resources :andro ...
随机推荐
- Vue & webpack
在webpack构建的项目中使用vue进行开发 在入口文件中 import Vue from 'vue' 导入的构造函数,功能不完整,只提供了runtime-only的方式,并没有提供网页中那样的使用 ...
- 修改Spring Social默认提交地址
⒈ package cn.coreqi.social.config; import org.springframework.social.security.SocialAuthenticationFi ...
- 使用new data计算时间以及格式转换
1.时间计算,往后加30(默认一个月的时间),sxTime表示的是在当前时间往后加几天的之后一个月 function maxDate1(){ var nowDate = new Date(); max ...
- Unity3D之Mesh(四)绘制多边形
来自https://www.cnblogs.com/JLZT1223/p/6086191.html 1. 总的来说绘制平面的思想十分简单,就是将需要的平面拆分成几个三角形然后进行绘制就可以啦,主要的思 ...
- 035_lua快速入门
执行下面的脚本用luajit test.lua即可 一.变量及逻辑运算 --number, string, boolean, table, function, thread, userdata, ni ...
- 024_nginx之backlog坑
一. 线上碰到一个nginx调优的一个设置,即listen后面设置 listen 80 backlog=1024; 但是多个域名都设置这个值的时候就会出现以下的提示重复报错. 关于backlog参数的 ...
- ranlib 作用
ar 命令用于更新,维护管理静态库. ranlib 命令用于 更新库的符号索引表. 当只执行了ar命令(用于更新)时, ld连接时会仍然报错,查找不到更新的变量或函数,此时需要用ranlib来更新库的 ...
- 缓存系列之五:通过codis3.2实现redis3.2.8集群的管理
通过codis3.2实现redis3.2.8集群 一:Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 Codis Proxy 和连接原生的 Redis Server 没 ...
- JS实现多语言方式
应用场景: 在不同移动平台(IOS,Android)上,建立一套与HTML页面通讯框架:主要业务逻辑使用HTML开发:想支持多语言开发. 动机: 通过主动发消息的方式,在页面完成初始化前,获取当前语言 ...
- Eleaticsearch源码分析(一)编译启动
转自:https://lunatictwo.github.io/2017/12/21/Eleaticsearch%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90(%E4%B8% ...