Django не загружает статические файлы ValueError («Отсутствует запись манифеста статических файлов для«% s »»% clean_name) - PullRequest
0 голосов
/ 02 июня 2018

- мое первое приложение в Django, и я пытаюсь подготовить свое приложение Django (2.0) к работе, но я не могу правильно загрузить статические файлы, используя WhiteNoise

Iу меня постоянно появляется следующая ошибка в моем журнале

ValueError("Missing staticfiles manifest entry for '%s'" % clean_name)
ValueError: Missing staticfiles manifest entry for 'css/inicio.css'
[02/Jun/2018 14:40:37] ERROR [django.server:124] "GET /participation/prueba HTTP/1.1" 500 27

У меня есть следующие settings.py

...
DEBUG=False
DJANGO_APPS = ['django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.sessions',
                'django.contrib.messages',
                #Delete for development whitenoise.runserver_nostatic
                'whitenoise.runserver_nostatic',
                'django.contrib.staticfiles',
                'django.contrib.sites'
               ]

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'whitenoise.middleware.WhiteNoiseMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.middleware.locale.LocaleMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
...
STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles/')

STATICFILES_DIRS = (
    (os.path.join(BASE_DIR, 'static')),
)

STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

Все мои статические файлы в папке называются статическими на корневом уровне, когда я запускаю manage.py collectstatic, я генерирую все статические файлы в директории staticfiles, но мне все равно не удается его запустить.

Я пытаюсь локализовать проблему и используюследующий шаблон

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    {% load static %}
    <link rel="stylesheet" href="{% static "css/inicio.css" %}">
</head>
<body>


{% for categoria in categoria_list %}
    <p>
        {{ categoria.titulo }}
    </p>
{% endfor %}


</body>
</html>

Я уже пытался изменить путь href на

{% static "/css/inicio.css" %}
{% static "static/css/inicio.css" %}

, но ни один из них не загрузил его

Также я пробовал с ибез 'whitenoise.runserver_nostatic', загруженного в Django Apps, и я продолжаю получать одинаковые результаты.

Кто-нибудь знает, что я делаю неправильно?

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 25 декабря 2018

Проблема в том, что где-то в ваших шаблонах вы ссылаетесь на статический файл, который не существует.В частности, вы передаете пустую строку в static.Возможно, у вас есть строка типа {% static some_variable%}, где some_variable не определена?

В Django 1.11 поведение изменилось, и в пропущенных файлах возникают ошибки.См .: https://docs.djangoproject.com/en/1.11/ref/contrib/staticfiles/#django.contrib.staticfiles.storage.ManifestStaticFilesStorage.manifest_strict

Если вы исправите эту ссылку, то все должно работать.

Ниже ТАК вопрос стоит прочитать. ValueError at / Отсутствует запись манифеста статических файлов для ''

Этот ответ скопирован с https://stackoverflow. com / a / 49656053/3001007

Такжездесь есть сложный ответ. Django Модель: ValueError: Отсутствует запись манифеста статических файлов для "file_name.ext"

0 голосов
/ 02 июня 2018

Попробуйте удалить эту строку,

STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

Источник: https://stackoverflow.com/a/32347324/2596187

...