一懊渡、激活虛擬環(huán)境
>cd rb
>cd Scripts
>activate.bat
二、創(chuàng)建項(xiàng)目
進(jìn)入到裝代碼的文件夾中
>cd develop
下載Django
>pip install django
下載相關(guān)配置
>pip install pymysql
>pip install pillow
創(chuàng)建項(xiàng)目(注意后面的點(diǎn))
>django-admin startproject rb .
創(chuàng)建app
python D:\Develop\develop\manage.py startapp app名
添加環(huán)境配置
在工程目錄init.py中寫到
import pymysql
pymysql.install_as_MySQLdb()
修改settings.py
ALLOWED_HOSTS = ['*'] # 允許任意域名(開發(fā)階段,上線要改)
INSTALLED_APPS(安裝應(yīng)?) ?添加??創(chuàng)建的$pp名耘戚,要每?個(gè)加完
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rb_mx',
'rb_zs',
]
和數(shù)據(jù)庫(kù)建?連接
在?程?件中的settings.py?件中修改
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 關(guān)聯(lián)到數(shù)據(jù)庫(kù)
'NAME': 'rb', # 數(shù)據(jù)庫(kù)名
'USER': 'root', # 以root身份進(jìn)行連接
'PASSWORD': '', # 用戶密碼
'HOST': '127.0.0.1', # 本地連接
'PORT': 3306 # 本地端口
}
}
保證和數(shù)據(jù)庫(kù)里信息一樣的
如果沒(méi)有那就創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)
創(chuàng)建數(shù)據(jù)庫(kù)
到數(shù)據(jù)庫(kù)中新創(chuàng)?個(gè)數(shù)據(jù)庫(kù)祷舀,名字是和settings.py?件中關(guān)聯(lián)的數(shù)據(jù)庫(kù)?樣的名
字,字符集是utf8
配置路由码泛,在工程目錄下的URL中配置
在訪問(wèn)user的時(shí)候, 關(guān)聯(lián)的是rb_mx的urls(路由)?件 ,namespace(是反向解析的時(shí)候?到的)
urlpatterns = [
path('admin/', admin.site.urls),
path('rb_dc/', include('rb_dc.urls')),
]
在每個(gè)自己添加的app目錄下 添加url.py文件 然后配置路由
from django.conf.urls import url
from rb.rb_mx import views
Urlpatterns = [
path('', views.index, name='index'),
]
在每個(gè)自己添加的app目錄下 添加views.py文件 然后在這里面寫函數(shù)(創(chuàng)建自己需要的方法)
def index(request):
if request.method == 'GET':
return '成功'
然后在每個(gè)自己添加的app目錄下 的models.py中添加數(shù)據(jù)庫(kù)模型 猾封,以下是字段類型,根據(jù)自己需求添加
1噪珊、models.AutoField 自增列=int(11)
如果沒(méi)有的話晌缘,默認(rèn)會(huì)生成一個(gè)名稱為id的列齐莲,如果要顯示的定義一個(gè)自增列,必須把該列設(shè)置為主鍵(primary_key=True)
2磷箕、models.CharField 字符串類型字段 必須加max_length參數(shù)
3选酗、models.BooleanField 布爾類型字段=tinyint(1) 不能為空,Blank=True
4岳枷、models.ComaSeparatedIntegerField 用逗號(hào)分割的數(shù)字類型=varchar 繼承CharField芒填,所以必須加max_lenght參數(shù)
5、models.DateField 日期字段類型date
參數(shù)auto_now=True表示每次更新都會(huì)更新這個(gè)時(shí)間空繁;參數(shù)auto_now_add表示只是第一次創(chuàng)建時(shí)添加殿衰,之后的更新不再改變
6、models.DateTimeField 日期字段類型datetime 同DateField的參數(shù)
7盛泡、models.Decimal 十進(jìn)制小數(shù)類型=decimal
必須指定整數(shù)位max_digits和小數(shù)位decimal_places
8闷祥、models.EmailField 字符串類型(正則表達(dá)式郵箱)=varchar 對(duì)字符串進(jìn)行正則表達(dá)式驗(yàn)證
9、models.FloatField 浮點(diǎn)類型=double
10傲诵、models.IntegerField 整形
11蜀踏、models.BigIntegerField 長(zhǎng)整形
integer_field_ranges = {
'SmallIntegerField': (-32768, 32767),
'IntegerField': (-2147483648, 2147483647),
'BigIntegerField': (-9223372036854775808, 9223372036854775807),
'PositiveSmallIntegerField': (0, 32767),
'PositiveIntegerField': (0, 2147483647),
}
12、models.IPAddressField 字符串類型(ip4正則表達(dá)式)
13掰吕、models.GenericIPAddressField 字符串類型(ip4和ip6是可選的)
參數(shù)protocol可以是:both果覆、ipv4、ipv6 驗(yàn)證時(shí)殖熟,會(huì)根據(jù)設(shè)置進(jìn)行報(bào)錯(cuò)
14局待、models.NullBooleanField 允許為空的布爾類型
15、models.PositiveIntegerFiel 正Integer
16菱属、models.PositiveSmallIntegerField 正smallInteger
17钳榨、models.SlugField 減號(hào)、下劃線纽门、字母薛耻、數(shù)字
18、models.SmallIntegerField 數(shù)字
數(shù)據(jù)庫(kù)中的字段有:tinyint赏陵、smallint饼齿、int、bigint
19蝙搔、models.TextField 字符串=longtext
20缕溉、models.TimeField 時(shí)間 HH:MM[:ss[.uuuuuu]]
21、models.URLField 字符串類型吃型,地址正則表達(dá)式
22证鸥、models.BinaryField 二進(jìn)制
23、models.ImageField 圖片
24、models.FilePathField 文件
遷移模型
python manage.py makemigrations ?成遷移?件
python manage.py migrate 進(jìn)?遷移
好啦 接下來(lái)就 靠自己啦