自定義查詢對象 - objects
①聲明一個類EntryManager,繼承自models.Manager,并添加自定義函數(shù)
②使用創(chuàng)建的自定義類EntryManager 覆蓋Models中的objects
# models.py class AuthorManager(models.Manager): # 新建一個類,繼承自models.Manager def name_count(self, keywords): # 添加自定義的查詢函數(shù) '''統(tǒng)計姓名中含有某些關(guān)鍵字的數(shù)量''' return self.filter(name__contains=keywords).count() def lt_age(self, age): '''查詢年齡小于指定年齡的信息''' return self.filter(age__lt=age) class Author(models.Model): objects = AuthorManager() # 使用創(chuàng)建的自定義類覆蓋objects name = models.CharField(max_length=30, verbose_name='姓名') age = models.IntegerField(verbose_name='年齡') email = models.EmailField(null=True, verbose_name='郵箱') picture = models.ImageField(null=True, upload_to='static/upload/usring', verbose_name='用戶頭像') publisher = models.ManyToManyField(Publisher, null=True, verbose_name='出版社') # views.py def myself(request): '''自定義查詢函數(shù)''' # 統(tǒng)計名字中包含王字的 num = Author.objects.name_count(keywords='王') # 查詢年齡小于36的作者信息 authors = Author.objects.lt_age(age=36) return render(request, 'name_count.html', locals())
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。