加载中...

django基础

创建django目录

"d:\python\script\django-admin.exe" startproject 项目名称

搭建app

# 创建app
python manage.py startapp app01

# 在setting上注册app
INSTALLED_APPS = [
    'app01.apps.App01Config',
]

# 在views上写逻辑
def index(request):
    return HttpResponse("欢迎使用django")

# 在urls上写路由对应关系
urlpatterns = [
    path('index/', views.index),
]


直接返回html 之模板语言

# 新建templates目录存放html
# 新建static目录存放js/css/img等

# 需要配合render()响应
def user_list(request):
    return render(request, "user_list.html", {lis:lis})

# html的模板格式
{% load static %}  # 置顶
<!DOCTYPE html>

# 接收字符串
<div>{{ name }}</div> 
# 接收列表第一个元素 
<div>{{ lis.0 }}</div> 
# 接收字典的key对应的值 
<div>{{ item.key }}</div> 

# for循环
{% for i in lis %}  
    <span>{{ i }}</span>
{% endfor %}

# 条件判断
{% if name == "hyman" %}  
    <h1>很帅</h1>
{% else %}
    <h1>一般</h1>

获取请求和响应

# 1. 获取请求方式
print(request.method)

# 2. 获取URL上传递的数据 /index/?n1=123&n2=999
print(request.GET)

# 3. 获取form提交的数据
print(request.POST)


一, 返回
return HttpResponse("返回html字符")

二, 返回页面
return render(request, '1.html', {"key": "key"})

三,从定向到其他页面
return redirect("https://www.baidu.com")

获取POST提交信息

def func(request):
    # 获取请求方法是什么
    print(request.method)
    
    # 获取请求体中提交的数据,得到一个querydict
    print(request.POST)

    # 重定向跳转
    if request.POST["user"] == "hyman":
        return redirect("https://www.baidu.com")

解决POST提交时的403报错

<form method="post" action="/login/">
    {% csrf_token %}
    <input type="text" name="user" placeholder="用户名">
    <input type="submit">
</form>

orm模型操作数据库

# 第一步安装mysqlclient模块
pip install mysqlclient

# 在set上配置数据库
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': '库名',
        'USER': 'root',
        'PASSWORD': '123',
        'HOST': '81.68.87.91',
        'PORT': '3306',
    }
}

# 在models模块上创建表,一个类就是一个表
class UserInfo(models.Model):
    name = models.CharField(max_length=255)
    age = models.IntegerField()
--------------------------------------------------
在执行命令保存
python manage.py makemigrations
python manage.py migrate


# 在views模块CRUD
from models import UserInfo
def func(request):
    # 查,queryset本体是数组套对象 [{对象1},{数据2}]
    data_queryset = UserInfo.objects.all()
    # 增,create一条数据就是一个对象
    UserInfo.objects.create(name="Hyman", age=19)
    # 改,filter
    UserInfo.objects.filter(name="Hyman").update(age=20)
    # 删除,delete
    UserInfo.objects.filter(id=1).delete()
    
    return HttpResponse("OK")


posted @ 2023-06-27 16:09  1502god  阅读(13)  评论(0)    收藏  举报
-->