十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
首先利用pyenv等类似软件,创建python多版本开发环境,配置好epel的yum仓库源。
坚守“ 做人真诚 · 做事靠谱 · 口碑至上 · 高效敬业 ”的价值观,专业网站建设服务10余年为成都成都活动板房小微创业公司专业提供成都企业网站定制营销网站建设商城网站建设手机网站建设小程序网站建设网站改版,从内容策划、视觉设计、底层架构、网页布局、功能开发迭代于一体的高端网站建设服务。前提还要安装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()
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。