clusterize.js с помощью django;статические файлы не найдены - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь использовать пакет javascript https://clusterize.js.org/ на моем веб-сайте Django для аккуратного и быстрого отображения очень больших таблиц. Я скачал необходимые js и css файлы пакета и сослался на них в html, загружаемом при посещении URL моего сайта: mysite.com/popularify

{% load static %}

{% block content %}
<!DOCTYPE html>
<html>

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

    <!-- uncommenting this line loading status files causes errors 
    <script src="{% static 'js/clusterize.min.js' %}"></script>
    -->

    <!-- I have a static/js/ folder -->

</head>

<body>
    <div>
        arthur russell = spotify:artist:3iJJD5v7oIFUevW4N5w5cj <br>

    <!--HTML-->
    <div class="clusterize">
        <table>
            <thead>
                <tr>
                    <th>Headers</th>
                </tr>
            </thead>
        </table>
        <div id="scrollArea" class="clusterize-scroll">
            <table>
                <tbody id="contentArea" class="clusterize-content">
                    <tr class="clusterize-no-data">
                        <td>Loading data…</td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>

    <script>

        // clusterize JavaScript
        var data = ['<tr>x</tr>', '<tr>z</tr>', '<tr>zxc</tr>'];
        var clusterize = new Clusterize({
            rows: data,
            scrollId: 'scrollArea',
            contentId: 'contentArea'
        });

    </script>

</body>

</html>
{% endblock content %}

И убедился, что у меня есть два файла в этом месте, когда я пытаюсь получить доступ к своему сайту, я получаю ошибку 404, только когда я раскомментирую строку в моем html-файле, ссылающуюся на статический файл django.

В моем файле settings.py Django есть:

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

STATIC_URL = '/static/'

STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, "static"),
    ]

Как мне заставить мою html-страницу загрузить эти статические файлы?

Ответы [ 2 ]

0 голосов
/ 06 ноября 2019

Ваш путь к другим статическим файлам также кажется неправильным. Поддержка шаблона Django тег staticfile , поэтому в свой шаблон вверху добавьте load staticfile и включите статический тег, а путь внутриваша статическая папка вот так:

{% load staticfiles %}

<link rel="stylesheet" href="{% static 'css/main.css' %}">

<script src="{% static 'js/custom.js' %}"></script>
0 голосов
/ 06 ноября 2019

Похоже, что версия Chrome может быть несовместима или связана с расширениями Chrome.

Что вы можете сделать, это заблокировать background.js , используя этот код:

$(document).ready(function(){
    $.getScript("urlofscript");
});

Чтобы получить URL, наведите курсор на background.js, записанный в меню проверки.

Надеюсь, это поможет!

...