一、激活虚拟环境
>cd rb
>cd Scripts
>activate.bat
二、创建项目
进入到装代码的文件夹中
>cd develop
下载Django
>pip install django
下载相关配置
>pip install pymysql
>pip install pillow
创建项目(注意后面的点)
>django-admin startproject rb .
创建app
python D:\Develop\develop\manage.py startapp app名
添加环境配置
image.png
在工程目录init.py中写到
import pymysql
pymysql.install_as_MySQLdb()
修改settings.py
ALLOWED_HOSTS = ['*'] # 允许任意域名(开发阶段,上线要改)
INSTALLED_APPS(安装应⽤) ⾥添加⾃⼰创建的$pp名,要每⼀个加完
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rb_mx',
'rb_zs',
]
和数据库建⽴连接
在⼯程⽂件中的settings.py⽂件中修改
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 关联到数据库
'NAME': 'rb', # 数据库名
'USER': 'root', # 以root身份进行连接
'PASSWORD': '', # 用户密码
'HOST': '127.0.0.1', # 本地连接
'PORT': 3306 # 本地端口
}
}
保证和数据库里信息一样的
如果没有那就创建一个数据库
创建数据库
到数据库中新创⼀个数据库,名字是和settings.py⽂件中关联的数据库⼀样的名
字,字符集是utf8
配置路由,在工程目录下的URL中配置
在访问user的时候, 关联的是rb_mx的urls(路由)⽂件 ,namespace(是反向解析的时候⽤到的)
urlpatterns = [
path('admin/', admin.site.urls),
path('rb_dc/', include('rb_dc.urls')),
]
在每个自己添加的app目录下 添加url.py文件 然后配置路由
from django.conf.urls import url
from rb.rb_mx import views
Urlpatterns = [
path('', views.index, name='index'),
]
在每个自己添加的app目录下 添加views.py文件 然后在这里面写函数(创建自己需要的方法)
def index(request):
if request.method == 'GET':
return '成功'
然后在每个自己添加的app目录下 的models.py中添加数据库模型 ,以下是字段类型,根据自己需求添加
1、models.AutoField 自增列=int(11)
如果没有的话,默认会生成一个名称为id的列,如果要显示的定义一个自增列,必须把该列设置为主键(primary_key=True)
2、models.CharField 字符串类型字段 必须加max_length参数
3、models.BooleanField 布尔类型字段=tinyint(1) 不能为空,Blank=True
4、models.ComaSeparatedIntegerField 用逗号分割的数字类型=varchar 继承CharField,所以必须加max_lenght参数
5、models.DateField 日期字段类型date
参数auto_now=True表示每次更新都会更新这个时间;参数auto_now_add表示只是第一次创建时添加,之后的更新不再改变
6、models.DateTimeField 日期字段类型datetime 同DateField的参数
7、models.Decimal 十进制小数类型=decimal
必须指定整数位max_digits和小数位decimal_places
8、models.EmailField 字符串类型(正则表达式邮箱)=varchar 对字符串进行正则表达式验证
9、models.FloatField 浮点类型=double
10、models.IntegerField 整形
11、models.BigIntegerField 长整形
integer_field_ranges = {
'SmallIntegerField': (-32768, 32767),
'IntegerField': (-2147483648, 2147483647),
'BigIntegerField': (-9223372036854775808, 9223372036854775807),
'PositiveSmallIntegerField': (0, 32767),
'PositiveIntegerField': (0, 2147483647),
}
12、models.IPAddressField 字符串类型(ip4正则表达式)
13、models.GenericIPAddressField 字符串类型(ip4和ip6是可选的)
参数protocol可以是:both、ipv4、ipv6 验证时,会根据设置进行报错
14、models.NullBooleanField 允许为空的布尔类型
15、models.PositiveIntegerFiel 正Integer
16、models.PositiveSmallIntegerField 正smallInteger
17、models.SlugField 减号、下划线、字母、数字
18、models.SmallIntegerField 数字
数据库中的字段有:tinyint、smallint、int、bigint
19、models.TextField 字符串=longtext
20、models.TimeField 时间 HH:MM[:ss[.uuuuuu]]
21、models.URLField 字符串类型,地址正则表达式
22、models.BinaryField 二进制
23、models.ImageField 图片
24、models.FilePathField 文件
迁移模型
python manage.py makemigrations ⽣成迁移⽂件
python manage.py migrate 进⾏迁移
好啦 接下来就 靠自己啦
网友评论