启动流程
-
安装:
pip install Django
-
创建新项目
django-admin startproject [projectname]
-
目录结构及说明
sample |----manage.py # 管理网站的脚本,启动web服务器 |----Sample settings.py # 工程的核心配置文件 urls.py # 路径配置文件:http://www.127.0.0.0.1:8000/hello wsgi.py __init__.py
-
修改配置文件:
setting.py
- 修改Debug日志:
DEBUG = True
改为DEBUG = False
- 修改语言显示:
LANGUAGE_CODE = 'en-us'
改为LANGUAGE_CODE = 'zh-cn'
- 修改数据库:
DATABASES
- 修改时区显示:
TIME_ZONE = 'UTC'
改为TIME_ZONE = 'Asia/Shanghai'
- 修改Debug日志:
-
为网站生成数据库
python manage.py migrate
-
运行服务器
python manage.py runserver [IP or PORT]
-
windows 获取本地IP
ipconfig
简易教程
- 如何才能运行起来一个没有自己写代码的Django网页
- 安装python 和 Django
- 在指定目录下新建一个项目:
django-admin startporject [projectname]
- 运行服务器:
python manage.py runserver
核心知识:
1:第一个视图和URL配置
2:Django模型:数据库的配置及shell操作
3:Django后台初看
4:编程感悟
1:视图和URL
-
Django开发大致流程
- 配置urls
- 视图views
- 模型models
- 模板templates
-
创建项目和一个应用:
目录下:django-admin startproject learn 目录下:python manage.py startapp one
-
setting.py 注册应用
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'one' ]
-
再次明确下目录下文件的用途
文件名 | 用途 |
---|---|
urls.py | 网址入口,关联到对应的views.py 一个函数 |
views.py | 网页显示的内容,用户访问网页能看到的界面内容 |
models.py | 数据库操作,定义数据表等 |
settings.py | Django设置文件,时区,数据库,语言,app注册等设置 |
... | ... |
-
编写视图文件:目录
one\views.py
from django.shortcuts import render from django.http import HttpResponse # Create your views here. def hello(request): return HttpResponse("Hello world.") # 需要导入HttpResponse类 # 函数需要至少需要带参数:request
-
配置url:目录:
learn\urls.py
from django.conf.urls import url from django.contrib import admin from one.views import hello # 导入视图文件那个hello 函数 urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^first, hello), ] # 配置url后的意思是:访问http://127.0.0.1:8000/first 网址,显示的是视图文件hello函数返回的内容 # url配置会使用到正则表达式
-
启动服务器:
目录下:python manage.py runserver # 访问网页 http://127.0.0.1:8000/hello 显示hello world
- 回顾下主要参照流程
- Django创建项目:
django-admin startproject learn
- django 启动一个app应用:
python manage.py startapp one
- 设置文件注册:app
- 编写视图文件: views.py
- 配置url文件: urls.py
- 执行启动服务器命令:
python manage.py runserver
- Django创建项目:
- 访问网页链接的发生的过程步骤
- 请求转入:http://127.0.0.1:8000/first
- Django 通过ROOT_URLCONF配置来决定根URLconf
- URL模式匹配中匹配first
- 调用想应的视图文件
- 视图文件返回一个HttpResponse
- webpage 展示:Hello world.
2:Django模型
模型models.py 文件主要和数据库相关
Django 支持4种数据库:
- PostgreSQL
- SQLite
- MySQL
- Oracle
以:MySQL为例
- settings.py 配置数据库信息
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test',
'USER': 'root',
'PASSWORD': 123456,
'HOST': 'localhost',
'PORT': 3306
}
}
# ENGINE: mysql 指定是mysql数据库
# NAME: 数据库名字
# 用户,密码,主机地址,端口号
- models.py 文件的编写:目录:
one\models.py
一个表即是一个类:下面创建一个只有一列的数据表:表名为:Character
from django.db import models
# Create your models here.
class Character(models.Model):
name = models.CharField(max_length=200)
def __unicode__(self):
return self.name
# 字段名为:name, 最大长度为200,字符串类型
-
在数据库中为模型生成表结构
python manage.py makemigrations [APPNAME] python manage.py migrate [APPNAME] # 数据库:test 中生成:APPNAME_character 的表,包含字段为:name, 自动添加字段id
-
Django shell
交互式shell对数据库进行操作: python manage.py shell# 我们创建的APPNAME 为one, 数据表定义的类为:Character, 定义的字段为: name >>> from one.models import Character >>> # 向数据表中增加一条数据 >>> Character.objects.create(name ="xiexiaolu" ) # s数据库增加一条name="xiexiaolu"的数据 >>> first = Character.objects.get(name = "xiexiaolu") >>> # 查看字段属性值 >>> first.id >>> first.name >>> first.delete() # 详情还是参考官方文档吧
- 官方文档:点这里
3:Django后台
-
创建管理员账户
python manage.py createsuperuser # 输入用户名 # 输入密码
- 访问:http://www.127.0.0.1:8000/admin
可以对定义的数据库表进行操作等
-
默认显示英文:更改显示中文
setting.py 文件下 将语言显示改为 LANGUAGE_CODE = 'zh-cn'
4:编程感悟
借我杀死庸碌的情怀
其实和官方文档的结构很像,并没有太多的关于深层次的框架感悟。
需要持续精进。
实现最小化可行系统是实现和理解编程原理的第一步。
转自:http://www.jianshu.com/p/0edf2e5d88e6#