Статические файлы не загружаются в проект django
У меня есть проект, где мой партнер работал над Frontend без использования каких-либо фреймворков, просто использовал js, html и css. Я хотел прикрепить этот фронтенд к бэкенду с помощью Django.
вот мои settting.py
STATIC_ROOT = os.path.join('C:/Users/1224095/work/Backend/backend/static')
STATIC_URL = '/static/'
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
и добавил {% load static %} в html-заголовок. Чтобы не запутать вас, я сделал статическую директорию с именем static, и внутри нее я взял свои активы и плагины из фронтенда, плюс в каждом месте я добавил href= {% static 'path to the file' %}
В результате я получаю ошибку 404, есть ли у кого-нибудь идеи почему? вот пример моего html:
<!doctype html>
<html lang="en">
{% load static %}
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="{% static 'assets/plugins/simplebar/css/simplebar.css' %}" rel="stylesheet" />
<link href="{% static 'assets/plugins/perfect-scrollbar/css/perfect-scrollbar.css' %}" rel="stylesheet" />
<link href="{% static 'assets/plugins/metismenu/css/metisMenu.min.css' %}" rel="stylesheet" />
<link href="{% static 'assets/plugins/vectormap/jquery-jvectormap-2.0.2.css' %}" rel="stylesheet" />
<link href="{% static 'assets/plugins/highcharts/css/highcharts-white.css' %}" rel="stylesheet" />
Это не лучший способ...
(1): Вы можете использовать это только в вашем settting.py==>
STATIC_URL = '/static/'
(2): Вы должны скопировать и разместить ваши СТАТИЧЕСКИЕ файлы (Js, CSS, ...) в каждом приложении с шаблонами (html), которые вы создали. Это будет выглядеть следующим образом :
App
|_migrations
|_templates
|_static
|__App (directory with the App name)
|_assets
|_js
|_css
|_img
|_plugins
|_....
Ваш HTML будет выглядеть следующим образом ===>
<!doctype html>
<html lang="en">
{% load static %}
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="{% static 'App/assets/plugins/simplebar/css/simplebar.css' %}" rel="stylesheet" />
Только не забудьте написать App перед каждым 'assets'
Надеемся, что это поможет вам....