Я пытался использовать bootstrap в своем приложении. но я получаю ОШИБКУ 404 для каждого bootstrap файла, который запрашивает мой шаблон. Мой Django проект находится в подкаталоге моего сайта (www.example.com/django-project). Сначала я загружаю bootstrap прямо с их сайта и помещаю в каталог проекта следующим образом. Но после некоторых сбоев при загрузке файлов на веб-сайт я установил его, используя python3 -m pip install django-bootstrap-static
. Мои файлы конфигурации выглядят следующим образом:
settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'get_cfp_list',
'bidiutils',
'bootstrap',
'fontawesome',
]
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'bidiutils.context_processors.bidi',
'django.template.context_processors.static',
],
},
},
]
STATIC_URL = '/static/'
STATICFILES_DIRS = (
'/var/www/portal/portal/static/bootstrap/',
)
STATICFILES_FINDERS = (
"django.contrib.staticfiles.finders.FileSystemFinder",
"django.contrib.staticfiles.finders.AppDirectoriesFinder",
)
Структура папки: / var / www/portal/portal/
├── db.sqlite3
├── get_cfp_list
│ ├── admin.py
│ ├── apps.py
│ ├── cfp.html
│ ├── __init__.py
│ ├── models.py
│ ├── tests.py
│ ├── views.py
├── manage.py
├── portal
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ ├── wsgi.py
├── static
│ └── bootstrap
│ ├── css
│ │ ├── bootstrap.css
│ │ ├── bootstrap.min.css
│ │ ├── bootstrap-responsive.css
│ │ └── bootstrap-responsive.min.css
│ ├── img
│ │ ├── glyphicons-halflings.png
│ │ └── glyphicons-halflings-white.png
│ └── js
│ ├── bootstrap.js
│ └── bootstrap.min.js
└── templates
├── base.html
├── cfp.html
└── styles
└── table.css
Я также использовал bootstrap стартовый шаблон следующим образом: ( base. html)
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Bootstrap, from Twitter</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">
<!-- Le styles -->
<link href="{{ STATIC_URL }}css/bootstrap.css" rel="stylesheet">
<style>
body {
padding-top: 60px; /* 60px to make the container go all the way to the bottom of the topbar */
}
</style>
<link href="{{ STATIC_URL }}css/bootstrap-responsive.css" rel="stylesheet">
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="{{ STATIC_URL }}js/html5shiv.js"></script>
<![endif]-->
<!-- Fav and touch icons -->
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">
<link rel="shortcut icon" href="../assets/ico/favicon.png">
</head>
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="brand" href="#">Project name</a>
<div class="nav-collapse collapse">
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
</div>
<div class="container">
<h1>Bootstrap starter template</h1>
<p>Use this document as a way to quick start any new project.<br> All you get is this message and a barebones HTML document.</p>
</div> <!-- /container -->
<!-- Le javascript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="{{ STATIC_URL }}js/jquery.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-transition.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-alert.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-modal.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-dropdown.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-scrollspy.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-tab.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-tooltip.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-popover.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-button.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-collapse.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-carousel.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-typeahead.js"></script>
</body>
</html>
Но я получил net::ERR_ABORTED 404 (Not Found)