首先利用pyenv等类似软件,创建python多版本开发环境,配置好epel的yum仓库源。
前提还要安装pip:
yum install python-pip
升级pip软件:
pip install --upgrade pip
一、安装django:
pip install django==1.8.2
验证是否安装成功:
进入python命令行执行如下两条命令:
import django
django.get_version()
二、创建django项目
django-admin startproject 项目名称
例如:django-admin startproject test1
就在当前目录自动创建test1目录且其里面又自动创建相关文件和目录:
三、数据库配置
编辑./test1/test1/settings.py文件:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
默认是使用的sqlite3数据库,此时先不修改myslq数据库,后面再说如何修改mysql。
四、创建应用
python manage.py startapp 应用名称
例如:python manage.py startapp bookshop
就会在该test1项目目录下,又自动创建一个以bookshop的应用名称为目录及相关文件:
说明下在bookshop目录下几个文件的作用:
admin.py:后台管理;
__init__.py:表示该父目录是一个模块;
migrations:迁移,作用是根据当前项目的模型类生成数据库脚本,并将数据库脚本映射到数据库中即迁移;该目录下也有__init__.py表示此目录也是为一个模块;
models.py:定义模型类;
tests.py:是django自带的测试模块;
views.py:定义视图函数;
五、编写模型类
编辑models.py模型类文件:
from django.db import models
# Create your models here.
class BookInfo(models.Model):
btitle = models.CharField(max_length=20)
bpub_date = models.DateTimeField()
class HeroInfo(models.Model):
hname = models.CharField(max_length=10)
hgender = models.BooleanField
hcontent = models.CharField(max_length=1000)
hbook = models.ForeignKey(BookInfo)
定义模型类主要作用有二,其一是根据模型类生成sql语句并创建表,其二模型类可以创建对象,然后基于这个对象就可做各种操作;模型类的对象操作是可以映射到数据库中去执行sql语句的,例如insert、update、delete等语句。
六、把应用注册到项目中
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'bookshop',#应用名称
)
七、生成迁移
python manage.py makemigrations
会生成迁移文件0001_initial.py,为操作数据库做准备。
八、执行迁移
python manage.py migrate
注意:在创建应用完成以后,默认会有几个应用一同会被执行迁移,执行迁移实际上就是操作数据库。
九、进入django里的shell命令行,进行测试数据创建、插入、更新、查询、删除等操作
修改模型类test1/bookshop/models.py:
...
class BookInfo(models.Model):
btitle = models.CharField(max_length=20)
bpub_date = models.DateTimeField()
def __str__(self): #新增的内容,因为不是数据库变动,所以不做迁移操作
return self.btitle
...
进入django的shell命令行:
python manage.py shell
from bookshop.models import *
from datetime import datetime
#创建数据
book = BookInfo()
book.btitle='python'
book.bpub_date = datetime(year=2018,month=10,day=27)
#插入数据
book.save() #由于在setting.py文件中,时区设定问题会出现RuntimeWarning信息
#查询数据
BookInfo.objects.all()
#更新数据
book = BookInfo.objects.get(pk=1) #pk表示为主键
book.btitle='django'
book.save()
#删除数据
book.delete()
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。