一、Django安装

1、使用pip安装django

pip3 inistall django

2、将django-admin加入到环境变量中

# 如果是windows的系统需要操作这一步,linux和mac不需要
C:\Python34\Scripts\django-admin.exe 找到自己对应路径的django-admin.exe程序,将其加入到环境变量中

二、创建django程序

1、使用django命令创建

django-admin startproject mysite

使用命令创建会少一个模板的目录,需要手动创建模板目录,然后修改settings.py中TEMPLATES的配置
- 在django程序的根目录创建一个templates目录,用来存放html文件
- 修改mysite\mysite\settings.py 将TEMPLATES列表中的'DIRS': [] 改为: 'DIRS': [os.path.join(BASE_DIR, 'templates')]

2、用pycharm创建,用pycharm创建就不需要设置settings中的TEMPLATES列表了,默认就配置好了

3、目录结构

mysite/         # django程序根目录
├── manage.py # django启动文件
├── mysite # 配置文件目录
│   ├── settings.py # 配置文件
│   ├── urls.py # 路由系统
│   └── wsgi.py # WSGJ
└── templates # html文件目录

三、创建APP

1、一个页面可以由多个APP来组成,例如监控、cmdb等等,使用下面命令可以创建app

python3 manage.py startapp cmdb

2、目录结构

mysite/
├── cmdb # 这个目录就是通过命令创建的app
│   ├── admin.py # django默认的后台管理页面配置文件
│   ├── apps.py # 当前app的配置文件
│   ├── migrations
│   ├── models.py # 跟数据库相关的所有操作
│   ├── tests.py # 单元测试,测试程序的某一个功能
│   └── views.py # 业务请求处理
├── manage.py
├── mysite
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── templates

四、创建index页面(业务请求流程)

1、首先在APP的viesw.py中创建业务处理的函数, mysite/cmdb/views.py

from django.shortcuts import render
from django.shortcuts import HttpResponse # Create your views here. def index(request):
return HttpResponse("index")

2、修改路由,将index指向到上面APP创建的业务处理函数, mysite/mysite/urls.py

from django.conf.urls import url
from django.contrib import admin
from cmdb import views urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/', views.index),
]

五、启动django程序

1、通过命令启动

python3 manage.py runserver 127.0.0.0:8000

2、通过pycharm的启动按钮启动

六、通过浏览器访问django程序

在浏览器中输入 http://127.0.0.1:8000/index/就能够看到APP cmdb中返回的页面了

七、静态文件配置

静态文件目录主要用来存放静态文件,例如js,css,图片

1、在django程序的根目录创建一个static目录

2、修改mysite\mysite\settings中底部添加如下代码

STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),
)

3、应用

  • ① 路由配置 mysite/mysite/urls.py
from django.conf.urls import url
from django.contrib import admin
from cmdb import views urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/', views.index),
]
  • ② 业务请求处理配置 mysite/mysite/views.py
from django.shortcuts import render
from django.shortcuts import HttpResponse # Create your views here. def index(request):
return render(request, "index.html")
  • ③ html页面代码 mysite/templates/index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="/static/s1.css">
</head>
<body> <h1>测试</h1> </body>
</html>
  • ④ css样式代码 mysite/static/s1.css
h1{
color: red;
}
  • ⑤ 浏览器请求效果

Django之牛刀初试的更多相关文章

  1. 搜索引擎--范例:django之初试牛刀

    这学期学了一门课<信息检索>,也就是传说中的搜索引擎 大作业自然而然的让我们自己做一个小型的搜索引擎.于是乎,我们本次的主题就诞生了 我也是边学边用,下面和大家一起分享我在这个过程中学到的 ...

  2. redis初试牛刀

    先来无事就学学redis.可是并没有想的那么美好.首先要解释一下,redis主流是安装在lunx系统中的,甚至官网直接没有给出windows版本.要下载windows只能去所谓的githup.好吧我在 ...

  3. python初试牛刀

    需求:在L7的一台机器上做nginx配置,然后代码分发到别的所有的机器上.由于目录中有很多配置文件,而且防止误操作,需要修改配置之前先备份原配置.然后需要在运行修改配置的脚本之前,先弹出界面,告知操作 ...

  4. 周末充电之WPF(一).初试牛刀

    追的剧已经赶上更新的速度了,突然觉得一下子就闲了.趁着这点时间,刚好学点 WPF .看到这边,好多人估计得感叹技术宅约等于单身狗,哈哈.好了,赶紧进入学习状态. 关注 WPF 或者说对它感兴趣其实多半 ...

  5. HBase 2、HBase安装与初试牛刀

    官方帮助文档:http://hbase.apache.org/book.html  PDF:http://hbase.apache.org/apache_hbase_reference_guide.p ...

  6. iOS 视图调试器(Debug View Hierarchy) 之 初试牛刀

    参考:http://blog.csdn.net/th_gsb/article/details/44856795 由于iOS的界面开发大多都是用代码实现的,编写的时候,那就是看不见摸不着的情况.所以,如 ...

  7. PyQt4 初试牛刀一

    建立了一个MainWindow,创建最基本的菜单栏.状态栏.工具栏,并重新定义了"X"关闭的默认行为. # -*- coding: utf-8 -*- import sys fro ...

  8. PyQt4 初试牛刀二

    一.最小话托盘后,调用showNormal()后窗口不刷新,解决办法如下: 重写showNormal 方法,调用父类方法后,repaint窗体 def showNormal(self):     su ...

  9. [学习OpenCV攻略][003[初试牛刀——显示图片]

    cvLoadImage(路径) 加载指定路径的图片到内存 cvNamedWindow("窗口名称", 属性) 创建窗口,窗口名称用来被其他函数引用,属性:0表示窗口大小不变,CV_ ...

随机推荐

  1. angular template浅析

    在我们浏览的页面中有大的网站,也有中小型网站,类型不同其中的页面也就不同,但是纵观大部分的网页是否有什么相同的地方呢?如果浏览的是一般的门户网站或者是什么小型的页面的话这种感觉就不是很明显,但是如果关 ...

  2. How far away ?

    #include<iostream> #include <algorithm> using namespace std; const int M=40010; int dis[ ...

  3. 代码bug

    1.webstorm ide未配置basePath本地会加入根路径 2.点击一次就销毁可以给标签设置一个值data-val="0" 某个函数只执行一次的方法,或者也可以考虑绑用on ...

  4. 翻译-让ng的$http服务与jQuerr.ajax()一样易用

    Make AngularJS $http service behave like jQuery.ajax() 让ng的$http服务与jQuerr.ajax()一样易用 作者zeke There is ...

  5. srand((double)microtime()*1000000)

    分为4个步骤1:执行microtime(),获取当前的微秒数 2:把获取的微秒数转换为double类型 3:再用转换后的数字去乘以1000000 4:给随机数发生器播种,播种数为第三步得出的结果 ra ...

  6. 实战EntityFramework

    删除对象一定要在同一个context 我尝试这在两个方法中使用两个context(Container)实例来进行一个获得一个删除,结果我获得的”The object cannot be deleted ...

  7. 独家分享——大牛教你如何学习Web前端开发

    2014-12-18 14:35:42     引语 自从2008年接触网站开发以来到现在已经有六个年头了,今天偶然整理电脑资料看到当时为参加系里面一个比赛而做的第一个网站时,勾起了在这网站开发道路上 ...

  8. codevs 4163 hzwer与逆序对

    传送门 题目描述 Description hzwer在研究逆序对. 对于数列{a},如果有序数对(I,j)满足:i<j,a[i]>a[j],则(i,j)是一对逆序对. 给定一个数列{a}, ...

  9. 转:[译]Autoprefixer:一个以最好的方式处理浏览器前缀的后处理程序

    原文来自于:http://www.cnblogs.com/aNd1coder/archive/2013/08/12/3252690.html Autoprefixer解析CSS文件并且添加浏览器前缀到 ...

  10. c# appdomain

    http://www.cnblogs.com/Terrylee/archive/2005/11/28/285809.html