淺談django 重載str 方法
修改models效果如下
class EmailVerifyRecord(models.Model): code = models.CharField(max_length=20, verbose_name= u'驗證碼') email = models.EmailField(max_length=50, verbose_name=u'郵箱') send_type = models.CharField(choices=(('register',u'注冊'),('forget',u'找回密碼')), max_length=10 ,verbose_name=u'發送類型') send_Time = models.DateTimeField(default=datetime.now, verbose_name=u'添加時間') class Meta: verbose_name = u'郵箱驗證碼' verbose_name_plural = verbose_name #新增如下代碼 def __str__(self): return ’{0}({1})’.format(self.code ,self.email)
補充知識:django model 重載objects實現自定義控制
場景需求
班級model作為foriegnfield供用戶選擇,為了方便選擇我們需要過濾掉一部分數據
解決方案 重載objects
class BanjiManager(models.Manager): def get_queryset(self): return super(BanjiManager, self).get_queryset().filter(DQSZJ=’2016’) class StuBK_banji(models.Model): #rid = models.IntegerField(_(u’序號’),primary_key=True) FY = models.CharField(_(u’學院’),max_length=40) BH = models.CharField(_(u’班級’),max_length=40, blank=True) DQSZJ = models.CharField(_(u’年級’),max_length=40, blank=True) objects = BanjiManager() def __str__(self): return self.FY+’_’+self.BH class Meta: verbose_name = u'班級(從教務處數據提取)' verbose_name_plural = verbose_name
以上這篇淺談django 重載str 方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章: