Include template attachments in attachment count

This commit is contained in:
Oliver Walters 2019-05-26 00:39:36 +10:00
parent d563e873ed
commit 2138977b07
2 changed files with 16 additions and 1 deletions

View File

@ -771,6 +771,21 @@ class Part(models.Model):
return data.export(file_format)
@property
def attachment_count(self):
""" Count the number of attachments for this part.
If the part is a variant of a template part,
include the number of attachments for the template part.
"""
n = self.attachments.count()
if self.variant_of:
n += self.variant_of.attachments.count()
return n
def attach_file(instance, filename):
""" Function for storing a file for a PartAttachment

View File

@ -40,7 +40,7 @@
</a></li>
{% endif %}
<li{% ifequal tab 'attachments' %} class="active"{% endifequal %}>
<a href="{% url 'part-attachments' part.id %}">Attachments {% if part.attachments.all|length > 0 %}<span class="badge">{{ part.attachments.all|length }}</span>{% endif %}</a>
<a href="{% url 'part-attachments' part.id %}">Attachments {% if part.attachment_count > 0 %}<span class="badge">{{ part.attachment_count }}</span>{% endif %}</a>
</li>
</ul>