当前位置: 首页 > news >正文

做网站主要栏目内dns上国外网站

做网站主要栏目内,dns上国外网站,济南网站建设优化,网站建设招标信息1. Django 构建数据表创建与数据迁移 1.1 数据表创建 1.1.1 模块功能 如前所述#xff0c;models.py文件主要用一个 Python 类来描述数据表。运用这个类,可以通过简单的 Python 代码来创建、检索、更新、删除 数据库中的记录而无需写一条又一条的SQL语句。今天的例子就是在…1. Django 构建数据表创建与数据迁移 1.1 数据表创建 1.1.1 模块功能 如前所述models.py文件主要用一个 Python 类来描述数据表。运用这个类,可以通过简单的 Python 代码来创建、检索、更新、删除 数据库中的记录而无需写一条又一条的SQL语句。今天的例子就是在model.py中创建两个表产品分类表和产品信息表。 1.1.1.1 models.py 产品分类表 class GoodsCategory(Model):name CharField(max_length64, verbose_name名称)remark CharField(max_length256, nullTrue, blankTrue, verbose_name备注) 产品信息表 class Goods(Model):number CharField(max_length32, verbose_name编号)name CharField(max_length64, verbose_name名称)barcode CharField(max_length32, nullTrue, blankTrue, verbose_name条码)category ForeignKey(goods.GoodsCategory, on_deleteSET_NULL, nullTrue,related_namegoods_set, verbose_name产品分类)spec CharField(max_length64, nullTrue, blankTrue, verbose_name规格)shelf_life_days IntegerField(nullTrue, verbose_name保质期天数)purchase_price FloatField(default0, verbose_name采购价)retail_price FloatField(default0, verbose_name零售价)remark CharField(max_length256, nullTrue, blankTrue, verbose_name备注) 1.2 合并数据库 这两个命令是Django框架中的关键命令用于进行数据库迁移。当你修改了Django模型后你需要运行这两个命令以将这些更改应用到数据库中。 python manage.py makemigrations 这个命令用于生成迁移脚本。当你更新了模型文件之后需要运行该命令Django会检测模型的改变然后自动生成相应的迁移脚本存储在migrations/目录下。通常来说你需要针对每个应用运行一次该命令。 python manage.py migrate 这个命令用于将迁移脚本应用到数据库中。当你在模型文件中进行更改之后需要先通过makemigrations命令生成迁移脚本然后运行该命令将这些脚本应用到数据库中。对于新的迁移脚本Django会逐个执行它们从而更新数据库结构。对于已经执行过的脚本Django会跳过它们避免重复执行。 这两个命令是Django框架中非常重要的命令在修改数据库相关内容时必须时刻清醒地记住使用它们。 2. Django-models的常用字段和常用配置 2.1 常用字段 CharField 用于存储字符串类型有最大长度限制 IntegerField 用于存储整数类型 FloatField用于存储浮点数类型 BooleanField 用于存储布尔类型 DateField 用于存储日期类型 DateTimeField 用于存储日期和时间类型 ImageField 用于存储图片类型 FileField 用于存储文件类型 ForeignKey 外键 用于表示数据库表之间的关联关系 OneToOneField 一对一 用于表示一对一的关联关系 ManyToManyField 多对多 用于表示多对多的关联关系   ‍ 2.2 常用配置 max_length 字段的最大长度限制可以应用于多种不同的字段类型。 verbose_name 字段的友好名称便于在管理员后台可视化操作时使用。 default 指定字段的默认值。 null 指定字段是否可以为空。 nullTrue 设置允许该字段为 NULL 值 blank 指定在表单中输入时是否可以为空白。 choices 用于指定字段的可选值枚举列表,在最上面定义 2.3 字段定义 class DeliveryMaterial(Model):class Status(TextChoices):QUALIFIED (qualified, 良品) UNQUALIFIED (unqualified, 不良品)status CharField(max_length32, choicesStatus.choices, defaultStatus.QUALIFIED, verbose_name状态)TextChoices 是 Django 3.0 引入的一个枚举类用于在模型字段中创建可选择的、文本值的选项。 related_name 指定在多对多等关系中反向使用的名称。 on_delete 指定如果外键关联的对象被删除时应该采取什么操作。 ‍ 3. Django-admin 引入admin后台和管理员 3.1 创建管理员 3.1.1 创建后台 admin 管理员 在终端运行命令 python manage.py createsuperuser 登录 admin 后台 http://127.0.0.1:8000/admin python manage.py runserver 3.2 配置 在admin.py文件中注册你的模型 from django.contrib import admin from .models import * # 引入产品表# 一定要分开逐个注册不能放在一起admin.site.register(Goods)# 在admin站点中 注册产品表admin.site.register(GoodsCategory) # 在admin站点中 注册产品表‍ 3. 构建数据表外键的使用 3.1 外键 models.py category ForeignKey(GoodsCategory,on_deleteSET_NULL,related_namegoods_set,nullTrue,verbose_name产品分类) on_delete 设置当外键对应的数据被删除时的反应 nullTrue 外键的概念 外键是一种用于建立表之间关联关系的约束通常指的是一个模型中的一个或多个字段的值必须符合另一个模型中对应字段的值。 增加数据 苹果 - 水果桃子 - 水果猴子 - 动物大象 - 动物构建根据分类获取某个分类下的产品 API views.py from django.shortcuts import render from rest_framework.response import Response from .models import * from rest_framework.decorators import api_view from django.shortcuts import get_object_or_404 # Create your views here. # GET # POST# 函数式编程 api_view([POST, GET]) def InsertGoodsCategory(request):category_name request.data.get(分类名字)# 获取分类对象或创建新的分类对象category, created GoodsCategory.objects.get_or_create(namecategory_name)# 判断是否已存在分类if not created:return Response({status: 已存在, goods_category: category_name}, status200)else:return Response({message: fSuccessfully inserted category {category_name}.})api_view([POST,GET]) def FilterGoodsCategory(request):data request.data.get(分类名字)goods GoodsCategory.objects.filter(namedata)if goods.exists():return Response({status: 已存在, goods_category: data}, status200)else:return Response({status: 不存在 ,goods_category: data}, status404)urls.py 放入路由 from django.contrib import admin from django.urls import path from apps.erp_test.views import *urlpatterns [path(admin/, admin.site.urls),path(filtergoodscategory/, FilterGoodsCategory),path(insertgoodscategory/, InsertGoodsCategory),] 使用postman针对insertGoodsCategory/和filtergoodscategory/API接口进行测试测试结果如下 ‍
http://www.dnsts.com.cn/news/57289.html

相关文章:

  • 手机 网站 开发苏州小程序
  • 张掖建设网站建设一个境外网站
  • 寿光网站建设公司宝安区网络公司
  • dw建设网站物流网站建设推广
  • 云龙网站开发手机的网站建设目标是什么意思
  • 下载好了网站模板怎么开始做网站?怎么创建一个空壳公司
  • 网站后台更新前台不显示公司备案网站被注销吗
  • html可视化布局工具外贸seo是什么意思
  • 外贸网站 php怎么用服务器做网站
  • 临夏网站建设公司wordpress自适应 slide
  • 网站未备案 打不开网站可以做被告嘛
  • 网站建设无底薪提成跨越速运网站谁做的
  • 做soho要不要注册网站昆明网站制作计划
  • 网站建设 绍兴的公司公司怎样做网络推广
  • 医院网站建设医生需要做什么郑州加盟做网站
  • 营销型网站搭建的工作电子商务平台运营是做什么的
  • 敖汉旗网站建设做网站 广告费 步骤
  • 网站租用怎么办网站平台
  • 长沙购物网站建设WordPress做搜索引擎
  • 南京自助建站模板地铁工程建设论文投稿网站
  • 获取网站访客信息卖东西专业网站网上
  • 网站维护的方法安卓网站开发视频
  • 邢台网站建设最新报价线上推广渠道和方式
  • 大良网站设计价位昆明seo
  • 网站开发过程中出现的问题手机网站菜单设计模板
  • 绿色大气漂亮dedecms茶叶企业网站html5 wap网站
  • 东莞微信网站建设信息有什么公司建网站
  • 网站后台界面 园林设计常德公司做网站
  • 青州网站是做网站设计好还是杂志美编好
  • 定制建站方案免费网站服务器推荐