I'm actually new to Django and tried to load my theme into newly created project.
I have a home.html
template file placed at {APP_NAME}/templates/ directory of my Django project. The APP_NAME is called website
here and projectname is dentist
. Here is the structure top-level directory of project:
dentist
env (virtual environment)
static
website
css
templatemo_style.css
images
...
website
templates
home.html
manage.py
As you see the static files are placed in the static under the APP_NAME.
Now here is the home.html
:
{% load static %}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>free template one - templatemo</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="{% static 'website/css/templatemo_style.css' %}" rel="stylesheet" type="text/css" />
</head>
And this is settings.py
added configuration:
STATIC_URL = 'static/'
STATICFILES_DIR = [
os.path.join(BASE_DIR,'static')
]
But now the problem is whenever I load the project, the css file is not being loaded and the html is corrupted!
I check the source code and it shows this link:
<link href="/static/website/css/templatemo_style.css" rel="stylesheet" type="text/css" />
However it is not found and the page comes up this way:
Move your static
folder into the website(your app) folder.
Also, create a folder named website (app name) in the templates folder and move home.html
there.
This will be your final file structure.
website
static
website
css
templatemo_style.css
templates
website
home.html
I hope this will solve your issue.