Django初始化项目
创建django项目
在pycharm中新建Django项目,创建的时候可以选择一起创建一个应用
这个应用无需去settings里注册,pycharm帮你注册好了
创建应用
python3 manage.py startapp 应用名
配置应用
注册应用
# settings.py
INSTALLED_APPS = [
'应用名',
]
配置数据库
事先在navicat中创建好库
# 在项目的init.py文件内
import pymysql
pymysql.install_as_MySQLdb()
# settings.py文件
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '提前创建好的库的名字',
'USER':'root',
'PASSWORD':'6008',
'HOST':'127.0.0.1',
'PORT':3306,
'CHARSET':'utf8'
}
}
static相关
在项目下创建一个static文件夹,里面放静态文件,包括CSS,JS,HTML,和第三方的框架,如jQuery,bootstrap
把bootstrap和jQuery都复制进来
# settings.py文件,配置令牌,静态文件路径
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR,'static')
]
配置models
AbstractUser
使用自定义的用户模型类
# models.py
from django.contrib.auth.models import AbstractUser
# 先导入
class UserInfo(AbstractUser):
# 继承AbstractUser
pass
# settings.py
AUTH_USER_MODEL = 'bbs01.UserInfo'
# 告诉django我们使用自己的用户模型类
数据库
# models.py
from django.db import models
class Blog(models.Model):
# 继承models.Model
site_name = models.CharField(verbose_name='站点名称', max_length=32)
site_title = models.CharField(verbose_name='站点标题', max_length=32)
site_theme = models.CharField(verbose_name='站点样式', max_length=64)
数据库迁移命令
python3 manage.py makemigrations
python3 manage.py migrate
编写html
导入static
{% load static %}
<script src="{% static 'jQuery/jQuery-3.4.1.js' %}"></script>
<link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}">
<script src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></script>
必须有{% load static %},否则访问不到static文件夹中的文件
forms组件
使用forms组件,可以在项目下另外写一个py文件,专门用来放forms组件。如果要使用forms的地方很多,可以创建一个文件夹,里面放一系列forms组件
# myforms.py
from bbs01 import models
from django import forms
# 先导入模板层,forms组件
class MyRegForm(forms.Form):
# forms组件代码
...
# views.py 或者其他使用forms组件的地方
from bbs01.myforms import MyRegForm
# Create your views here.
def register(request):
form_obj = MyRegForm()
return render(request,'register.html',locals())