django model 返回指定的字段

来源:互联网 发布:五常大米销售数据 编辑:程序博客网 时间:2024/06/12 18:40

在Model中可以

class City(models.Model):    CityID = models.IntegerField(unique=True, primary_key=True)    CityName = models.CharField(max_length=300, blank=True)    CityEnName = models.CharField(max_length=300, blank=True)    city_list = []    city_dict = {}    using = 'citydb'  #使用指定的数据库    class Meta:        db_table = u'CityList'    @staticmethod    def getCityEnName(cityid):        if cityid == 0:            return u'All'        if cityid < 0:            return u'Unknown'        try:            cityenname = City.objects.using(City.using).values('CityEnName').filter(CityID=cityid)   #得到一个QuerySet  如:[{'CityEnName': u'beijing'}]            cityenname = City.objects.using(City.using).get(CityID=cityid).CityEnName   #得到指定的字段值        except ObjectDoesNotExist:            return 'Unknown'        return cityenname

在ModelManger中可以

class CityManager(models.Manager):    def getCityEnNameByID(self, cityid):        citylist = None        if cityid is not None:            citylist = super(CityManager, self).get_query_set() \                .values("cityenname") \              .filter(cityid=cid)        return citylist #得到[{'cityenname': u'beijing'}]的QuerySet

参照:

1. https://docs.djangoproject.com/en/dev/topics/db/models/

2. https://docs.djangoproject.com/en/dev/ref/models/querysets/

3. https://docs.djangoproject.com/en/dev/topics/db/queries/

0 0
原创粉丝点击