Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在Django中使IntegerField/CharField自动递增字段为1000001,1000002

如何在Django中使IntegerField/CharField自动递增字段为1000001,1000002
EN

Stack Overflow用户
提问于 2018-10-17 00:35:50
回答 1查看 5.7K关注 0票数 3

我在模型中有一个字段"CharField“,当用户创建一个项目时,如何使IntegerField/CharField成为Django中的默认自动递增字段为1000001,1000002?或者year + 00001,00002,0003等等,我不能有多个AutoField,而且这个字段已经有了很多数据。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-17 02:15:52

解决方案是将您的字段设置为自动字段。如果将其设置为自动字段,django将不会添加导致错误的主键。

不能有一个以上的AutoField。您需要显式地将主键指定为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
field = models.AutoField(primary_key=True) # or False

从1000001开始计数最好的方法是修改迁移文件。这取决于您正在使用的数据库。如果你使用Postgres,那么它看起来是这样的。在迁移中编辑操作或运行SQL命令DB命令提示符:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
operations = [
    migrations.CreateModel(...),
    # mysql specific
    migrations.RunSQL('alter table tablename auto_increment=1000001'),
]

alter命令将根据您正在使用的数据库进行更改。

如果您想要一个自定义的AutoField,那么您可以创建一个char字段并使其可编辑为false。然后手动指定值。参考:https://techstream.org/Web-Development/Custom-Auto-Increment-Field-Django

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52850563

复制
相关文章
【云+社区年度正文】Django从入门到精通No.2----模型
学过orm系统自然之道模型的重要性,很多web站点都需要与数据库交互,这个时候模型的设计就显得尤为重要,一个好的模型会使得项目方便管理并且易于维护,比如我们学过的flask,里面的sqlalchemy就是这样一个优秀的模块,通过它可以快速和数据库建立通道,从而使得web编程更为高效,本文主要讲解django的模型。
Python进阶者
2020/11/27
2.1K0
【云+社区年度正文】Django从入门到精通No.2----模型
Django进阶-3-ORM单表
orm操作可以使用类实例化,obj.save的方式,也可以使用create()的形式
小团子
2019/07/18
1.4K0
Django进阶-3-ORM单表
Django 系列博客(十三)
int 自增列,必须填入参数 primary_key=True。当 model 中如果没有自增列,则会自动创建一个列名为 id 的列。
py3study
2020/01/22
1.1K0
Django之ORM字段和参数
字段 常用字段 ---- AutoField                                                                                                                                                                                                                                         
人生不如戏
2018/04/12
2.3K0
Django之ForeignKey和ManyToManyField多表查询
多表查询是模型层的重要功能之一, Django提供了一套基于关联字段独特的解决方案.
菲宇
2022/12/21
1.8K0
Django 学习笔记之模型(上)
上片文章讲解模板。你本文将讲解 “MTV” 中 M 层次,即模型层(数据存取层)。模型这内容比较多,我将其拆分为 3 个部分来讲解。同时,文章也配套了例子,你可以通过 阅读原文 来查看。
猴哥yuri
2018/08/16
1.8K0
ORM常用字段介绍
2. 在Django项目的__init__.py文件中写如下代码,告诉Django使用pymysql模块连接MySQL数据库:
全栈程序员站长
2022/07/21
2.5K0
ORM常用字段介绍
[打造自己的监控系统] 使用Django管理数据库表
操作系统:CentOS 7.3 Python版本 :2.7 Django版本: 1.10.5 操作系统用户:oracle
bsbforever
2020/08/19
7060
django 字段类型_access的数据库类型是
自增的整型字段,必填参数primary_key=True,则成为数据库的主键,无该字段时,django会自动创建主键id字段。
全栈程序员站长
2022/10/04
3.9K0
Django 教程 --- Django 模型
一个Django模块是内置的功能,Django使用创建表,他们的田地,和各种约束。简而言之,Django Models是与Django一起使用的SQL数据库。SQL(结构化查询语言)很复杂,涉及许多不同的查询,用于创建,删除,更新或与数据库有关的任何其他内容。Django模型简化了任务并将表组织到模型中。通常,每个模型都映射到单个数据库表。 本文围绕如何使用Django模型方便地将数据存储在数据库中展开。此外,我们可以使用Django的管理面板来创建,更新,删除或检索模型的字段以及各种类似的操作。Django模型提供了简单性,一致性,版本控制和高级元数据处理。模型的基础包括–
公众号---人生代码
2020/05/25
2.2K0
如何在 Django 中创建抽象模型类?
Django 中的抽象模型类是一个模型,它用作其他模型继承的模板,而不是一个旨在创建或保存到数据库的模型。在应用程序中,可以使用抽象模型定义多个模型共享的相似字段和行为。使用 Django,您可以定义一个派生自 Django.db.models 的模型类,以建立一个抽象模型类。
很酷的站长
2023/08/11
2390
如何在 Django 中创建抽象模型类?
Django进阶知识
django为使用一种新的方式,即:关系对象映射(Object Relational Mapping,简称ORM)。
超蛋lhy
2018/08/31
3.6K0
使用Django管理数据库表
对象-关系映射(Object-Relational Mapping,简称ORM),简单来说就是通过面向对象的方法来映射后端数据库
bsbforever
2020/08/19
7840
使用Django管理数据库表
drf序列化器之反序列化的数据验证
使用序列化器进行反序列化时,需要对数据进行验证后,才能获取验证成功的数据或保存成模型类对象。
仙人技术
2020/09/25
2.1K0
drf序列化器之反序列化的数据验证
【Django】基于PythonWeb的Django框架设计实现天天生鲜系统-3模型创建
当前项目的开发都是数据库驱动,即分析出项目中所需要存储的数据,然后设计数据表结构,接下来对通过编写 SQL 语句对数据库中的表进行 CURD 操作。
天道Vax的时间宝藏
2021/08/11
1.1K0
13. Django 2.1.7 模型类 - 字段类型
上一篇Django 2.1.7 模型 - 使用mysql数据库连接访问讲述了如何使用mysql作为数据库,执行模型查询数据,并返回渲染页面。
Devops海洋的渔夫
2022/01/17
1.2K0
13. Django 2.1.7 模型类 - 字段类型
Django ORM (一) 创建数据库
创建一个 Django 项目及应用 django-admin startproject orm cd orm python manage.py startapp app01 在 models.py 上创建数据库结构 from django.db import models class Publisher(models.Model): name = models.CharField(max_length=30, verbose_name="名称") address = models.Ch
py3study
2020/01/16
1.4K0
Django基础——ORM字段和字段参数
对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象(
py3study
2020/01/16
1.6K0
三、模型(一)
当我们的程序涉及到数据库相关操作时,我们一般都会这么做: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行数据库操作 import MySQLdb def GetList(sql): db = MySQLdb.connect(user='root', db='website', passwd='1234', host='localhost') cursor = db.cursor() cursor.execut
酱紫安
2018/04/16
4.5K0
点击加载更多

相似问题

Django -如何在CharField / IntegerField上应用onlivechange

115

Django模型选择: IntegerField对CharField

12

如何在Django中将包含数据的现有CharField迁移到IntegerField

12

CharField在数据库中显示为IntegerField

13

Django:非主键自动递增字段

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文