0
我試圖讓某個特定職位存在的國家/地區,以便我只能顯示這些國家/地區。這樣做。我有以下代碼。django查詢中的簡單反向
型號:
class Country(models.Model):
name=models.CharField(max_length=100)
iso_code_2=models.CharField(max_length=4)
iso_code_3=models.CharField(max_length=4)
def __unicode__(self):
return self.name
def get_countries_with_jobs(self):
countries=self.objects.filter(id__in=Post.country)
return countries
class Category(models.Model):
name=models.CharField(max_length=100)
title=models.CharField(max_length=100)
meta_keywords=models.CharField(max_length=100)
meta_description=models.CharField(max_length=100)
sort_order=models.IntegerField()
def __unicode__(self):
return self.name
class City(models.Model):
name=models.CharField(max_length=100)
title=models.CharField(max_length=100)
meta_keywords=models.CharField(max_length=100)
meta_description=models.CharField(max_length=100)
sort_order=models.IntegerField()
country=models.ForeignKey(Country)
def __unicode__(self):
return self.title
class Post(models.Model):
user=models.ForeignKey(User)
title=models.CharField(max_length=100)
publish_date=models.DateField()
active=models.BooleanField()
country=models.ForeignKey(Country)
city=ChainedForeignKey(City,chained_field="country",chained_model_field="country")
category=models.ForeignKey(Category)
description=models.TextField()
added_by=models.CharField(max_length=70)
def __unicode__(self):
return self.title
這裏get_countries_with_jobs方法有試圖查詢並獲得其中存在後的國家代碼。通常情況下,一個訪問國的某個職位,但在這種情況下,我需要得到郵政存在的國家。在調用這個方法時,它給出了錯誤,所以我試圖在view方法中寫下如下代碼。
def list(request,template_name='list_posts.html'):
countries=Country.objects.filter(id__in=Posts.country)
return render_to_response(template_name,locals(),context_instance=RequestContext(request))
我想第二個,我應該使用它在視圖或我應該有它的國家模型作爲一種功能? – Hafiz 2012-08-16 18:34:49
你也可以做,但對於這樣一個簡單的過濾器,將它添加到模型中並沒有太多的意義。 – 2012-08-16 18:39:36
但這不適用於我,我有一個國家有帖子,但它沒有顯示使用選項2中的代碼。 – Hafiz 2012-08-16 18:51:56