初探Django
Posted 九级大狂风
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初探Django相关的知识,希望对你有一定的参考价值。
Python的WEB框架有Django、Tornado、Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM、模型绑定、模板引擎、缓存、Session等诸多功能。
安装Django
#命令行安装
pip3 install django
#或者 去Django官网下载
#或者拿IDE安装,我用的是pycharm
1,创建Django项目
#命令行
django-admin startproject my_site #mysite是项目名称
#IDE创建本质上就是执行上面的命令
#创建完成会自动生成以下文件和文件夹
mysite/ #根目录
templats/ #模板/html文件的目录
manage.py # 一个命令行工具,可以使你用多种方式对Django项目进行交互
mysite/ #真正的项目包
__init__.py
settings.py #配置文件,
urls.py #路由管理的文件
wsgi.py #项目与WSGI兼容的Web服务器入口
2,配置信息
2.1 数据库配置文件
DATABASES = {
\'default\': {
\'ENGINE\': \'django.db.backends.mysql\', #mysql数据库
\'NAME\': "user", #数据库名
\'USER\':"root", #用户
\'PASSWORD\':"123", #密码
\'HOST\':"", #主机名
\'POPT\':"3306", #端口
}
}
#由于Django内部连接MySQL时使用的是MySQLdb模块,而python3中还无此模块,所以需要使用pymysql来代替
#需要把下面的设置,放在跟项目名同级的__init__文件中
import pymysql
pymysql.install_as_MySQLdb()
2.2 应用配置,默认
INSTALLED_APPS = [
\'django.contrib.admin\', #管理站点
\'django.contrib.auth\', #认证系统
\'django.contrib.contenttypes\',#用于内容类型的框架
\'django.contrib.sessions\', #会话框架
\'django.contrib.messages\', #消息框架
\'django.contrib.staticfiles\', #管理静态文件的框架
\'polls\'
]
3,启动Django服务
#终端,需要进入项目的文件夹中执行面语句
python manage.py runserver #默认端口是8000
python manage.py runserver 8080 #指定8080端口
python manage.py runserver 0.0.0.0:8080 #所有IP段都能访问8080
4,创建APP,也就是应用
#终端
python manage.py startapp polls # polls是APP名字
#创建完成,会有如下目录
polls/
__init__.py
admin.py #管理员文件
apps.py #应用文件
migrations/ #不知道
__init__.py
models.py #数据库表的文件,ORM
tests.py
views.py #处理客服端提交的请求,逻辑的主要存放文件
4.1创建表
# polls 下的 models.py
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200) #数据表的列
pub_date = models.DateTimeField(\'datepublished\')
class Choice(models.Model):
question = models.ForeignKey(Question)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
4.2,生成表
三部曲
#修改你的模型(在models.py文件中)。
#运行python manage.py makemigrations ,为这些修改创建迁移文件
#运行python manage.py migrate ,将这些改变更新到数据库中。
1,第一步
# 在settings.py 里面 把应用名字添加进去
INSTALLED_APPS = (
\'django.contrib.admin\',
\'django.contrib.auth\',
\'django.contrib.contenttypes\',
\'django.contrib.sessions\',
\'django.contrib.messages\',
\'django.contrib.staticfiles\',
\'polls\', # 《---------------------这里
)
2,第二步
# 终端
$ python manage.py makemigrations polls #
#执行完 migrations文件夹下会生成0001_initial.py和__init__.py
3,第三步
#终端
python manage.py migrate #数据库迁移
mysql----》user 变成这样了
5,创建一个简单的交互程序
# mysite下的urls文件
from django.conf.urls import url
from django.contrib import admin
from polls import views #导入views
urlpatterns = [
url(r\'^admin/\', admin.site.urls),
url(r\'^index/\', views.index), #正则匹配url, 后面的是对应函数
]
#polls下的views文件
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def index(request):
return HttpResponse("hello,world") #返回一个简单的字符串
#去浏览器输入url:127.0.0.1:8000/index
# 我们看到了一个页面只有 “hello,world”
#报404的话
#看看django服务启动了没
python manage.py runserver #启动服务
6,配置静态文件static
# settings文件下
STATIC_URL = \'/static/\' # 《-------这个默认的
STATICFILES_DIRS = ( 《-----------------这是配置static
os.path.join(BASE_DIR,"static"),
)
#创建一个static文件夹
#里面放css文件,js文件,img,等等,静态文件都放在static文件夹下
以上是关于初探Django的主要内容,如果未能解决你的问题,请参考以下文章