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 ...
随机推荐
- Lock类-ReentrantLock的使用
在Java多线程中可以使用synchronized隐式锁实现线程之间同步互斥,Java5中提供了Lock类(显示锁)也可以实现线程间的同步,而且在使用上更加方便.本文主要研究 ReentrantLoc ...
- [Harbor]Docker登录Harbor仓库(HTTP方式)
Docker登录到Harbor仓库时,不管是使用http协议还是使用https协议,都需要修改一些配置. 这篇文章来介绍一下,在使用http协议时,需要进行什么哪些配置. 首先,确定自己的Harbor ...
- Deep Learning Tutorial - Multilayer perceptron
Multilayer perceptron:多层感知器 本节实现两层网络(一个隐层)作为分类器实现手写数字分类.引入的内容:激活函数(双曲正切.L1和L2正则化).Theano的共享变量.grad.f ...
- Excel删除重复值
Sub Uniquedata()Dim rCell As Range'创建Dictionary对象Set d = CreateObject("Scripting.Dictionary&quo ...
- python3+selenium入门11-窗口切换
在打开新的浏览器窗口时,如果要定位新窗口的元素,需要先切换到这个新打开的窗口中,才能定位到该窗口下的元素. current_window_handle:获取当前句柄.可以把句柄理解成窗口的身份证 wi ...
- Windows登录类型及安全日志解析
Windows登录类型及安全日志解析 一.Windows登录类型 如果你留意Windows系统的安全日志,在那些事件描述中你将会发现里面的“登录类型”并非全部相同,难道除了在键盘上进行交互式登录(登录 ...
- Ionic-轮播图ion-slide-box
官方用法介绍:http://www.ionic.wang/js_doc-index-id-44.html 用法 <ion-slide-box> <ion-slide> < ...
- less个人学习笔记
less中文官网:http://lesscss.cn/ . http://www.bootcss.com/p/lesscss/ Busy 视频教程:http://www.imooc.com/learn ...
- undefined reference to symbol '_ZNK11GenICam_3_016GenericException17GetSourceFileNameEv'
今天在编译DALSA二次开发的源码时,出现了如下错误: /usr/bin/ld: ./out/camera.o: undefined reference to symbol '_ZNK11GenICa ...
- linux shell中 if else以及大于、小于、等于逻辑表达式
在linux shell编程中,大多数情况下,可以使用测试命令来对条件进行测试,这里简单的介绍下,方便需要的朋友 比如比较字符串.判断文件是否存在及是否可读等,通常用"[]"来表示 ...