I have design a parent model which works fine. Parent model:
class Person(models.Model):
name = models.CharField(max_length=128)
present_position=models.CharField(max_length=100)
organization= models.CharField(max_length=150,blank=True)
address = models.CharField(max_length=150, blank=True)
email = models.EmailField(max_length=70, blank=True, null=True, unique=True)
photo= ResizedImageField(size=[100, 100],crop=['middle', 'center'],upload_to='persons/%Y/%m/%d/',null=True,
blank=True,
editable=True,
help_text="Person Picture")
I have child model which produce executive committee members:
class ExecMember(models.Model):
name = models.ForeignKey(Person, on_delete=models.CASCADE )
committee_position = models.CharField(max_length=100)
rank = models.IntegerField(blank=True)
member_start_date = models.DateField(blank=True)
member_end_date = models.DateField(null=True, blank=True)
is_active = models.BooleanField(default=True)
From child model I want to produce Executive Committee members list containing their related photo from Person model.
So far I tried:
In template:
{% for execomember in object_list %}
<tr>
<td>{{forloop.counter}}.</td>
<td>{{execomember.name}}<br>
{{execomember.committee_position}}</td>
<td><a href="{% url 'member:person-list' %}">
<img src="{{ person.photo_url|default_if_none:'#'}}" class="img-responsive">
</a></td>
<td>
{{execomember.member_start_date }}<br>
{{execomember.member_end_date}}
</td>
<td>
{{execomember.is_active}}<br>
</td>
</tr>
{% endfor %}
In views:
class ExeCommListView(generic.ListView):
model = ExecMember
context_object_name = 'execomembers'
In urls:
url(r'^execomember/$', views.ExeCommListView.as_view(), name='execomember-list'),
But this gives all the fields values of child model correctly. Only photo not shown.
How do I get photo from parent model to ExecMember model? Thanks.