E. Lizbeth
E. Lizbeth

Reputation: 117

CSS style is missing in all my Django applications

Since I started using the Django framework I noticed that the CSS style did not appear when I entered the admin site and others templates and I thought it was normal but with the passage of time I have seen that the applications of my partners did have the style, so I copied their projects on my laptop and I ran them and I could see the CSS style of their applications. I'm getting data from a database from a server, that's the only difference in how my partners and I have been working.

Does anyone know how I can fix this?

PD: I'm working with version 1.8 of Django and version 3.4.4 of python

This is my base of my HTML's code

{% load staticfiles %}
<html>
    <head>
        <title>DENUE INEGI</title>
        <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
        <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
        <link href='//fonts.googleapis.com/css?family=Lobster&subset=latin,latin-ext' rel='stylesheet' type='text/css'>
        <link rel="stylesheet" href="{% static 'css/crm.css' %}">
    </head>
    <body>
        <div class="page-header">
            {% if user.is_authenticated %}
            {% else %}
                <a href="{% url 'login' %}" class="top-menu"><span class="glyphicon glyphiconlock"></span></a>
            {% endif %}
                <h1><a href="/">Directorio Estadístico Nacional de Unidades Económicas INEGI</a></h1>
        </div>
        <div class="content container">
            <div class="row">
                <div class="col-md-8">
                    {% block content %}
                    {% endblock %}
                </div>
            </div>
        </div>
    </body>
</html>

Here is my setting.py file

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',
        ],
    },
},
]

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.8/howto/static-files/

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

I appreciate your answers, thank you :)

Upvotes: 2

Views: 2548

Answers (3)

Zagorodniy Olexiy
Zagorodniy Olexiy

Reputation: 2212

According to this documentation to serve static files during development you have to:

1) define STATIC_URL in settings file - you have it. So you have to create static folder in the root of your project.

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

3) In urls.py of you project you have to have this snippet:

from django.conf.urls import include, url
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    ...
]
 + static(settings.STATIC_URL, document_root=settings.STATICFILES_DIRS) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

If your project under deployment, then you can serve static files by the web server. Then you don't need snippet in urls.py

Hope it helps you

Upvotes: 0

Dawid
Dawid

Reputation: 395

Check your urls.py with urls.py of your friends project. I had the same problem with CSS files. and found answer in the docs https://docs.djangoproject.com/en/1.8/howto/static-files/#serving-static-files-during-development

Upvotes: 0

Zaman Afzal
Zaman Afzal

Reputation: 2109

Try to change Debug = True in your application settings and then check the admin panel.

Upvotes: 4

Related Questions