Django : Медиа URL не отображается в браузере

Я хочу получить ссылку на media django, но получаю ошибку 404 в браузере (Chrome) и код состояния 200 в терминале

models.py

from django.db import models
from django.utils import timezone
from django.utils.translation import gettext as _
from simple_history.models import HistoricalRecords
from django.conf import settings
from .formatChecker import ContentTypeRestrictedFileField
import os

class Contrat(models.Model):
    nom = models.CharField(max_length=15)
    prenom = models.CharField(max_length=20)
    telephone = models.CharField(max_length=14, unique=True)
    telephone2 = models.CharField(max_length=14, unique=True, blank=True, null=True)
    date_de_naissance = models.DateField(_("date de naissance"))
    email = models.EmailField(max_length=128)

class Record(models.Model):

    def content_file_name(instance, filename):
        ext = filename.split('.')[-1]
        filename = "%s_%s.%s" % (instance.contratSante.nom, instance.contratSante.prenom, ext)
        return os.path.join('enregistrements', filename)

    contratSante = models.ForeignKey(ContratSante, default=None, on_delete=models.CASCADE)
    record = ContentTypeRestrictedFileField(upload_to=content_file_name,content_types=['audio/mpeg', 'audio/mp3', 'audio/ogg'], max_upload_size=20971520, max_length=None)

У меня есть это

from .formatChecker import ContentTypeRestrictedFileField

из скрипта formatChecker.py для проверки размера и расширения файла

from django.db.models import FileField
from django.forms import forms
from django.template.defaultfilters import filesizeformat
from django.utils.translation import ugettext_lazy as _

class ContentTypeRestrictedFileField(FileField):
    """
    Same as FileField, but you can specify:
        * content_types - list containing allowed content_types. Example: ['application/pdf', 'image/jpeg']
        * max_upload_size - a number indicating the maximum file size allowed for upload.
            2.5MB - 2621440
            5MB - 5242880
            10MB - 10485760
            20MB - 20971520
            50MB - 5242880
            100MB - 104857600
            250MB - 214958080
            500MB - 429916160
    """
    def __init__(self, *args, **kwargs):
        self.content_types = kwargs.pop("content_types", [])
        self.max_upload_size = kwargs.pop("max_upload_size", 0)

        super(ContentTypeRestrictedFileField, self).__init__(*args, **kwargs)

    def clean(self, *args, **kwargs):
        data = super(ContentTypeRestrictedFileField, self).clean(*args, **kwargs)

        file = data.file
        try:
            content_type = file.content_type
            if content_type in self.content_types:
                if file._size > self.max_upload_size:
                    raise forms.ValidationError(_('Please keep filesize under %s. Current filesize %s') % (filesizeformat(self.max_upload_size), filesizeformat(file._size)))
            else:
                raise forms.ValidationError(_('Filetype not supported.'))
        except AttributeError:
            pass

        return data

views.py

def readFullContractsInfo(request, pk=None):
    getData = get_object_or_404(ContratSante, pk=pk)
    allRecords = Model2.objects.filter(contratSante__pk=pk)

    return render(request, 'read_template.html', {"getData": getData, "allRecords": allRecords})

Основной проект urls.py.

urls.py

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path('admin/', admin.site.urls),
    path("", include("authentication.urls")),
    path("", include("app.urls"))
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

read_template.html

.
<div class="col-12">
    <table class="display table">
        <tbody>
            <tr>
                <th style="width: 40%;"><i class="far fa-folder-open"></i> Date d'appel:
                </th>
                <td> {{ read.date_appel|date:"d M Y" }} </td>
            </tr>
            <tr>
                <th style="width: 40%;">
                    <i class="far fa-folder-open"></i> Client: </th>
                <td> {{ read.nom }} {{ read.prenom }} </td>
            </tr>
            <tr>
                <th style="width: 40%;"><i class="far fa-folder-open"></i> Telephone/GSM </th>
                <td> {{ read.telephone }}/{{ read.telephone2 }} </td>
            </tr>
            <tr>
                <th style="width: 40%;"><i class="far fa-folder-open"></i> Date de
                    naissance: </th>
                <td> {{ read.date_de_naissance|date:"d M Y" }} </td>
            </tr>
            <tr>
                <th style="width: 40%;"><i class="far fa-folder-open"></i> Email: </th>
                <td> {{ read.email }} </td>
            </tr>
            <tr>
                <th style="width: 40%;"><i class="far fa-folder-open"></i> Enregistrements</th>
                <td>
                    {% for p in allRecords %}
                    <audio controls>
                        <source src="{{ p.record.url }}" type="audio/mpeg">
                    </audio>
                    <br>
                    {% endfor %}
                </td>
            </tr>
        </tbody>
    </table>
</div>

settings.py

CORE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_ROOT = os.path.join(CORE_DIR, 'staticfiles')
STATIC_URL = '/static/'

STATICFILES_DIRS = (
    os.path.join(CORE_DIR, 'core/static'),
)

MEDIA_ROOT = os.path.join(BASE_DIR, 'core/media')
MEDIA_URL = '/media/'

При открытии ссылки я получаю вот такую ошибку. И когда я копирую медиа url, чтобы вставить его в браузер, я получаю это 404 Error

И из журнала teminal я вижу следующее 200 Code

Дополнительная информация:

Debug = True

Вернуться на верх