Я только что сделал пример FileField в одном из моих проектов, и он, похоже, работал так, как вы ожидаете. Вот пара вещей, которые можно попробовать.
Попробуйте выполнить настройки следующим образом. Я знаю, что они говорят, что плохо не заканчивать свой MEDIA_URL знаком /, но так я это делаю, и мне это нравится больше. Вам просто нужно помнить всякий раз, когда вы используете MEDIA_URL в шаблоне, чтобы следовать за ним с косой чертой: href = "{{MEDIA_URL}} / path / to / file"
MEDIA_ROOT = '/home/httpd/foo/media'
MEDIA_URL = '/media'
Если это ничего не поможет, создайте новую упрощенную модель с ничего не настроенным FileField и посмотрите, не возникает ли у вас такая же проблема.