Django记录

1 项目创建

mkvirtualenv diag
pip install Django==3.1.3
django-admin startproject IntelligentDiagnose
python manage.py startapp Diagnose
python manage.py migrate
  • 更改settings.py文件
ALLOWED_HOSTS = ["*"]
# 'django.middleware.csrf.CsrfViewMiddleware'
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
  • 更改views urls等文件

    # 添加路由
    from django.contrib import admin
    from django.urls import path, include
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('signal/', include('Diagnose.urls')),
    ]
    
    # 给app添加urls.py
    from django.conf.urls import url
    from Diagnose import views
    
    urlpatterns = [
        url(r'^diagnose', views.diagnose),
    ]
    
    # 视图函数编辑
    from django.http import HttpResponse, JsonResponse
    from django.shortcuts import render
    import json
    # Create your views here.
    def diagnose(request):
        return HttpResponse("diagnose result")
    
    

2 数据库操作

  • 新建一个APP存放公共的数据库

    python manage.py startapp common
    
  • 在models.py里面创建类

    class Customer(models.Model):
        name = models.CharField(max_length=200)
        phonenumber = models.CharField(max_length=200)
        address = models.CharField(max_length=200)
    
  • 在settings里面的INSTALLED_APPS注册数据表

    'common.apps.CommonConfig'
    
  • 此时Django已经知道了我们的common应用,我们可以在项目根目录下执行命令:

    python manage.py makemigrations common # output: Migrations for 'common' ......
    
  • 上面会在common/migrations/目录下生成相关代码,执行以下命令提交到数据库:

    python manage.py migrate
    
  • 更新数据库表

    # 1. 添加字段,因为之前可能已经有多条记录了,此时添加字段要设置为允许前面的记录为空
    qq = models.CharField(max_length=20, null=True, blank=True)  # 注null表示可以为空  blank表示可以为空字符串
    
    # 2. 重复执行上述命令
    python manage.py makemigrations common
    python manage.py migrate
    

3 Django admin 管理数据

Django提供了一个管理员操作界面可以方便的 添加、修改、删除你定义的 model 表数据。

首先,我们需要创建 一个超级管理员账号。

进入到项目的根目录,执行如下命令,依次输入你要创建的管理员的 登录名、email、密码。

python manage.py createsuperuser
Username (leave blank to use 'kerwin'): kerwin
Email address: 344896224@qq.com
Password: 
Password (again): 
Superuser created successfully.

注意密码至少8个字符。 这里,我们设置密码为 dg7…

登录admin系统后,发现没有customer表让我们可以添加记录,如果需要这类操作的话,要在common/admin.py添加如下设置:

from django.contrib import admin
from .models import Customer

admin.site.register(Customer)

4 实现如下功能

4.1 功能1

实现一个函数,来处理sales/customers/访问请求,返回数据库中customer表所有记录

猜你喜欢

转载自blog.csdn.net/D344896224/article/details/115795649