Django - как получить искомый объект в шаблоне через relatedmanager
Я пытаюсь написать логику поиска. но я застрял здесь
У меня есть модель местоположения и модель оценки. Каждая локация может иметь несколько ставок. это классы
class Location(models.Model):
name = models.TextField()
price = models.CharField(max_length=10)
class Rate(models.Model):
location = models.ForeignKey(Location,related_name="rate")
rate = models.IntegerField(max_length=10)
теперь, если пользователь ищет местоположение с тарифом 3
я сделаю это ввиду
def search(request):
rate = request.GET.get('get')
#all rates
allrates = Rate.objects.filter(rate=rate)
#all locations with this rate
locations = Location.objects.filter(rate__in=allrates)
return render_to_response('result.html',{'locations':locations},context_instance=RequestContext(request))
и в моем шаблоне:
{% for loc in locations %}
{{loc.rate.rate}} <--------- wrong! how to get that searched rate 3 here??
{% endfor %}
Но так как каждый объект местоположения может иметь несколько тарифов, {{loc.rate.rate}}
не работает. что я хочу, чтобы получить именно то, что хотел - здесь 3, что искали.
Может кто-нибудь дать мне подсказку или помочь, пожалуйста.
большое спасибо
1 ответ
Это должно работать -
{% for loc in locations %}
{% for rate in loc.rate %}
{{ rate.rate }}
{% endfor %}
{% endfor %}