目录
static
文件下 (手动创建)
STATIC_URL = "/static/"
访问静态文件的url前缀# 手动添加静态文件访问路径
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static") # 将static文件夹当中的资源暴露给用户
]
{% load static %}
<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>
request.method
获取用户请求的提交方式request.POST
获取的数据格式为 <QueryDict: {‘username‘: [‘bigb‘], ‘password‘: [‘123‘]}>
request.POST.get("username")
获取的是username对应的列表当中的最后一个值request.POST.getlist("username)
获取的还是username对应的列表request.GET
获取用户GET请求携带的数据
request.GET.get()
request.GET.getlist()
DATABASES
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 指定数据库的类型, 将sqlite3改为mysql
'NAME': 'day52', # 指定库名
'USER': 'root',
'PASSWORD': '123',
'HOST': '127.0.0.1',
'PORT': 3306,
'CHARSET': 'utf8'
}
}
"""
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'.
Did you install mysqlclient or MySQL-python?
这时我们需要一个连接MySQL的客户端, 但django默认的客户端是MySQLdb, 这是一个老模块, 我们用pymysql模块来代替它
"""
__init__.py
文件中导入和修改__init__.py
文件中导入和修改import pymysql
pymysql.install_as_MySQLdb()
class User(models.Model):
# 当没有指定主键的时候, django会自动创建主键id
id = models.AutoField(primary_key=True)
# django里面只有varchar()
username = models.CharField(max_length=255)
password = models.CharField(max_length=255)
python manage.py makemigrations
将数据库的修改, 记录到migrations文件夹内(仅仅是记录)python nanage.py migrate
将修改操作真正的同步到数据库中adress = models.CharField(max_length=255, default="Shanghai")
adress = models.CharField(max_length=255, null=True)
models.User.objects.filter(username="bigb")
按条件查询<QuerySet [<User: User object>]>
models.User.objects.all()
查询所有user_obj = models.User.objects.create(username="bigb", password="123")
user_obj.update(username="blake")
models.User.objects.filter(depart="RD").update(office="A-3")
user_obj.delete()
method="post"
action=""
, 不写既表示朝当前页面所在地址提交数据, 可以在urls.py中该页面路由对应的视图函数中接收action="/index"
, 只写后缀, 既表示朝该地址提交数据, 可在urls.py中该路由对象的视图函数中接收action=ww.google.com"
写全路径, 既表示朝该路径提交数据原文:https://www.cnblogs.com/bigb/p/11925318.html