django定义Model中的方法和属性

#定义一个Model
class UserProfile(models.Model):  
    user=models.OneToOneField(User,unique=True)
    phone=models.CharField(max_length=20)
    addr=models.CharField(max_length=500)
    #定义一个Method,检查phone num的长度
    def ztest(self):
        if len(self.phone) < 8:
            return 'The phone num is not correct'
        else:
            return 'The phone num is  correct'
    
    def phone_len(self):
        return len(self.phone)
    #定义一个Property,显示Phone num的长度
    p_len = property(phone_len)  #custom a property

 在view中导入改model,之后可以使用,不能直接在命令行下使用

给列加索引(db_index=True),可以给多列加索引:

lockouttime = models.DateTimeField(blank=True,null=True,db_index=True)

原文地址:https://www.cnblogs.com/dreamer-fish/p/5258939.html