Django: show a ManyToManyField in a template?

后端 未结 3 1830
别跟我提以往
别跟我提以往 2020-12-01 01:23

I\'ve got these models in my Django project:

class Area(models.Model):
    name = models.CharField(max_length=100, primary_key=True)
    def __unicode__(self         


        
3条回答
  •  醉话见心
    2020-12-01 02:05

    What does your view code look like?
    Here's one way you can return the related models:

    from myapp.models import Area, Place
    
    def detail(request, place_id):
        place = Place.objects.get(pk=place_id)
        areas = place.area.all()
    
        return render_to_response('detail.html', {
            "place": place,
            "areas": areas,
        })
    

    This example is just for illustration; you'd want to include error-handling code.
    Your template might look something like this:

    {{ place }}

    {% if areas %}
      {% for area in areas %}
    • {{ area.name }}
    • {% endfor %}
    {% endif %}

提交回复
热议问题