django入门-1

一 .创建环境
1.安装虚拟环境包(前提是安装好python环境):
windows:pip install virtualenvwrapper-win
linux : pip install virtualenvwrapper

2.创建虚拟环境test
mkvirtualenv test (windows会默认创建在 %USERPROFILE%Envs下)

3.安装django
使用虚拟环境:workon test
安装django : pip install django==1.8.2

常用命令:
rmvirtualenv test 删除虚拟环境test
lsviratualenv 查看有哪些虚拟环境
(使用某个虚拟环境后)pip list 查看当前环境下安装的包

二.django项目创建
1.项目创建:(切换到项目的路径)
django-admin startproject project_name

2.将虚拟环境以及项目倒入pycharm

3.添加应用
进入项目目录,添加应用
python manage.py startapp booktest()

生成文件:
models.py :定义模型的地方
views.py: 定义视图的地方
admins.py: 定义管理后台的difang

三.创建模型
1.models中编写自己的数据库模型
例如:
表名:BookInfo
字段:bookname,pub_date

表名:PersonInfo
字段:pname,pgender,pcontent,pbook

说明:1.创建book表格,存储书名及时间
2.创建persion表格,记录书中人物信息,并且记录属于哪本书

2.注册项目:
修改settings.py文件
在INSTALLED_APPS下增加自己的项目名称,例如'booktest'
修改数据库,默认使用sqllite3,这里修改为mysql:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST':'192.168.11.129',
'PORT':'3306',
'USER':'root',
'PASSWORD':'xunshi',
'NAME':'book_info',
}
}

3.根据模型类,在数据库中生成表格
dos命令下进入项目目录,相应虚拟环境下
生成迁移
python manage.py makemigrations
执行数据表迁移
python manage.py migrate

相关命令:
python manage.py shell 进入项目shell

  在bookinfo中新建数据,类似于mysql的insert
  from booktest.models(项目名)import *
  from datetime import datetime

  b = BookInfo()
  b.btitle = 'abc'
  b.pub_date = datetime(year=1990,month=11,day = 1)
  b.save()

  在bookinfo中查询数据,类似于mysql的select 
   from booktest.models(项目名)import *
   BookInfo.objects.all()

  在bookinfo中修改数据,类似于mysql的update
   from booktest.models(项目名)import *
   b =BookInfo.objects.get(pk=1)
   b.btitle = '123'
   b.save()

   在bookinfo中删除数据,类似于mysql的delete
   from booktest.models(项目名)import *
   from datetime import datetime

   b = BookInfo()
   b.delete()

四.后台管理(一定要使用python3.6以下,不然部分后台页面会报错)
1.创建后台账号
python manage.py createsuperuser
根据提示创建后台账号,密码
2.启动后台
python manage.py runserver 8080 (默认8000)

3.进入后台系统
http://127.0.0.1:8080/admin

 4.修改admin.py配置,将表格注册入后台系统
admin.site.register(BookInfo)


5.修改配置settings.py,支持中文,以及改为上海时区
修改为如下:
            LANGUAGE_CODE = 'zh-hans' (django 1.8.2+)
            TIME_ZONE = 'Asia/Shanghai' 

你可能感兴趣的:(django入门-1)