Django обслуживает статический HTML-файл с помощью JavaScript - PullRequest
0 голосов
/ 20 мая 2018

У меня есть странный случай, когда я пытаюсь обработать статический файл index.html, который содержит в себе пакет javascript из веб-пакета для файлов vue.js, но он отправляет неверное содержимое файла javascript.

Я попытался отправить файл html как представление шаблона и просто прочитать содержимое файла и отправить его как ответ html.Он сам отправляет html-файл правильно, но вместо того, чтобы отправлять содержимое файла javascript, он просто копирует содержимое index.html в файл javascript.

Я проверил, чтобы убедиться, что я случайно не перезаписывал файл javascript html-содержимым, и это не так, javascript находится в правильной форме, но когда он отправляется в браузер, это видно:

index.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>testprojsimple</title>
  </head>
  <body>
    <div id="app"></div>
    <script src="js/myvuejs.bundle.js"></script>
  </body>`
</html>

myvuejs.bundle.js:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>testprojsimple</title>
  </head>
  <body>
    <div id="app"></div>
    <script src="js/myvuejs.bundle.js"></script>
  </body>`
</html>

Любые идеи по поводу повторной отправки содержимого index.html.а также файл javascript?

Редактировать:

В данный момент я нахожусь в режиме разработки, просто выступая в виде:

def indexView(request):
    return HttpResponse(open("file/to/static/html/file/index.html").read())

Settings.py:

STATIC_ROOT = os.path.join(BASE_DIR,'static/')
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]

urls.py:

urlpatterns = [
    url(r'^', indexView),
]

Моя цель - избежать рендеринга на стороне сервера, используя клиентские инфраструктуры для доступа к бэкэнду django, который обслуживает данные, такие как json и т. Д...

1 Ответ

0 голосов
/ 20 мая 2018

Регулярное выражение ^ соответствует каждому URL;это просто означает «любая строка, которая начинается», которая, конечно, является каждой строкой.Вы также должны завершить шаблон: ^$, чтобы он захватывал только пустую строку.

...