读model所得

Posted 52forjie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了读model所得相关的知识,希望对你有一定的参考价值。

1,在save时,首先可以做如下操作

from django.db import models

class Blog(models.Model):
    name = models.CharField(max_length=100)
    tagline = models.TextField()

    def save(self, *args, **kwargs):
        do_something()          #在之前做操作
        super(Blog, self).save(*args, **kwargs) # Call the "real" save() method.
        do_something_else()    #在之后做操作


from django.db import models

class Blog(models.Model):
    name = models.CharField(max_length=100)
    tagline = models.TextField()

    def save(self, *args, **kwargs):      #在保存中做判断
        if self.name == "Yoko Ono‘s blog":
            return # Yoko shall never have her own blog!
        else:
            super(Blog, self).save(*args, **kwargs) # Call the "real" save() method.
 

 

2,抽象基类

当您想要将一些公共信息放入许多其他模型时,抽象基类非常有用。你写你的基类,并把abstract=True在元 类。然后,
此模型将不用于创建任何数据库表。相反,当它用作其他模型的基类时,其字段将添加到子类的字段中。
from django.db import models

class CommonInfo(models.Model):
    name = models.CharField(max_length=100)
    age = models.PositiveIntegerField()

    class Meta:
        abstract = True

class Student(CommonInfo):
    home_group = models.CharField(max_length=5)

 

3

 





以上是关于读model所得的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

vue最近学习所得知识点

Extjs使用商店代理api; CRUD

如何将 View 类中的代码片段移动到 OnAppearing() 方法?

为啥我的所见即所得编辑器在 vuejs 中运行如此缓慢?

如何进行 Java 代码阅读分析?