django models save()

class Types(models.Model):
title=models.CharField('主题',max_length=20,null =False, blank=False,)
sortid = models.IntegerField('关联sort',null =True, blank=True)
class Meta:
db_table = 'Types'
verbose_name = '类型'
verbose_name_plural = '类型'
ordering = ['id']
def save(self, * args, ** kwargs):
print self.title
self.title='000000000'
super(self.__class__, self).save(*args, ** kwargs)

自定义保存字段值

### Django Models 使用教程 #### 创建模型类 在Django中,数据库表通过Python类来表示,这些类被称为模型(Model),它们继承自`django.db.models.Model`。每一个属性代表一个数据库字段[^5]。 ```python from django.db import models class Person(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=30) ``` #### 字段选项 定义字段时可以设置多个参数以控制其行为: - `unique`: 如果设为True,则该字段在整个表中的值都必须唯一。 - `db_index`: 若此参数被设定为True,则会为此列建立索引来加速查询效率。 - `null`: 表明是否允许存储NULL值于数据库之中,默认情况下不允许(NULL)。 - `blank`: 这个标志用于验证阶段;如果它为真(True),则这个字段是可以留空的。 - `choices`: 提供一组可选值给特定字段。 - `default`: 设定当新记录加入而未提供数据时所使用的默认数值。 - `verbose_name`: 给予更人性化的名称,在管理界面显示更为友好。 - `auto_now_add`, `auto_now`: 自动填充当前日期时间戳,前者仅应用于对象首次保存之时,后者每次调用save()方法均会被触发。 - `max_length`: 对字符型字段而言必不可少的一个参数,指定了最大长度限制。 #### 数据库迁移 每当更改了模型结构之后都需要执行相应的数据库同步操作,这可以通过运行如下两条命令完成:先生成待应用的变化脚本(`makemigrations`)再实际实施这些变更(`migrate`)到目标数据库里去[^4]。 ```bash python manage.py makemigrations python manage.py migrate ``` #### 注册至Admin站点 为了让开发者能够方便快捷地管理和编辑已有的实体实例,通常还会把对应的Model注册到后台管理系统当中。只需简单几行代码即可实现这一功能[^3]: ```python from django.contrib import admin from .models import MyModel admin.site.register(MyModel) ``` #### 性能优化技巧 对于复杂的应用程序来说,性能是一个非常重要的考量因素之一。为了提高读取速度并保持良好的维护性,可以在项目中引入虚拟模型的概念——即利用预加载机制减少SQL查询次数从而达到提升响应时间和简化业务逻辑的目的[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值