1.静态文件的配置
STATIC_URL = '/static/' # 别名
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
STATICFILES_DIRS = [ #按照列表的顺序进行查找
os.path.join(BASE_DIR, 'x1'),
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'x2')
]
2.登陆的实例
form表单
- action 提交的地址 method post
- input 需要有name
- submit 提交的按钮或者input
目前提交post请求,注释一个csrf 中间件
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
# 'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
前端模板 http://www.jq22.com
3.app
新建APP
python manage.py startapp app名称
注册APP
在settings中
INSTALLED_APPS = [
'app01',
'app01.apps.App01Config', # 推荐写法
]
目录
admin.py django admin
apps.py app的信息
models.py 模型 model 跟数据库有关
views.py 写函数
4.orm
使用mysql数据库的流程
-
创建一个mysql数据库;
-
在settings中配置数据库:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 引擎 'NAME': 'day53', # 数据库名称 'HOST': '127.0.0.1', # IP 'PORT': 3306, # 端口号 'USER': 'root', # 用户名 'PASSWORD': '123' # 密码 } }
-
使用pymysql模块连接mysql数据库。
写在与settings同级目录下的init.py中
import pymysql pymysql.install_as_MySQLdb()
-
写对应关系,在app下的models.py中写类。
class User(models.Model): username = models.CharField(max_length=32) # username varchar(32) password = models.CharField(max_length=32) # password varchar(32)
-
执行数据库迁移的命令
python manage.py makemigrations # 记录下models.py的变更记录
python manage.py migrate # 变更记录同步到数据库
orm 操作
ret = models.User.objects.get(username=user, ) # 找不到就报错 找到多个也报错
ret = models.User.objects.filter(username=user, ) # 对象列表