在Django 1.11中找不到静态文件

时间:2018-11-24 12:49:56

标签: python django path django-staticfiles static-files

访问localhost上的任何页面时,我得到Robert's answer。 我已经阅读了所有相关文章,但仍然不明白为什么。

我已将'django.contrib.staticfiles'包含在INSTALLED_APPS中。

我的设置中有DEBUG = TRUE。py

我的项目布局和代码如下。

谢谢。

repo_root
├── manage.py
│   
├── project_root
│   │
│   ├── accounts
│   │   ├── migrations
│   │   ├── __init__.py
│   │   ├── admin.py
│   │   ├── apps.py
│   │   ├── models.py
│   │   ├── tests.py
│   │   ├── views.py
│   │   └── urls.py
│   │
│   ├── templates
│   │   └── index.html   
│   │
│   └── static
│       └── assets
│           ├── bootstrap
│           ├── css
│           ├── fonts
│           ├── img
│           └── js
│   
├── config_root
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
│  

settings.py

STATIC_URL = '/static/'

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

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

index.html

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
    <title>index</title>
    <meta name="description" content="sample_content">
    <link rel="stylesheet" href="'static/assets/bootstrap/css/bootstrap.min.css'">
    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:400,400i,700,700i,600,600i">
    <link rel="stylesheet" href="'static/assets/fonts/simple-line-icons.min.css'">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/baguettebox.js/1.10.0/baguetteBox.min.css">
    <link rel="stylesheet" href="'static/assets/css/smoothproducts.css'">
</head>

urls.py

url(r'^index/$', IndexView.as_view())

views.py

class IndexView(TemplateView):
    template_name = "index.html"

2 个答案:

答案 0 :(得分:1)

我没有,

{% load static %}

href="{% static 'assets/bootstrap/css/bootstrap.min.css' %}"

添加这些可以解决问题。

谢谢!

答案 1 :(得分:0)

您的STATICFILES_DIRS定义不正确。您的BASE_DIR很可能定义为project_root文件夹,因为这是默认的Django设置。您应该在定义中忽略project_root。

if (a[1]) == '+': try: print(int(int(a[0])+int(a[2]))) except ValueError: print(int(int(a[0])+int(a[4]))) except ValueError: print(int(int(a[2])+int(a[4]))) if (a[1]) == '-': try: print(int(int(a[0])-int(a[2]))) except ValueError: print(int(int(a[0])-int(a[4]))) except ValueError: print(int(int(a[4])-int(a[2])))

您还应该在urlpatterns中包含静态文件url。

检查Django文档以获取更多信息https://docs.djangoproject.com/en/2.1/howto/static-files/