Ответ 1
Как только вы получите доступ к значению FileField
, вы получите значение типа File
, который имеет следующие методы:
File.name
:
Имя файла, включая относительный путь от MEDIA_ROOT.
File.size
Размер файла в байтах.
Итак, вы можете сделать это в своем шаблоне:
{% for download in downloads %}
<div class="download">
<div class="title">{{download.file.name}}</div>
<div class="size">{{download.file.size}} bytes</div>
<div class="desc">{{download.desc}}</div>
</div>
{% endfor %}
Чтобы получить более удобный для чтения файл (для тех из ваших пользователей, которые были бы смущены, увидев 64,5 МБ как 67633152 байта - я их называю wusses), тогда вас может заинтересовать filesizeformat
, чтобы превратить размеры в байтах в такие вещи, как 13 KB
, 4.1 MB
, 102 bytes
и т.д., которые вы используете в своем шаблоне следующим образом:
<div class="size">{{download.file.size|filesizeformat}}</div>