Szablon Django project base

Czy mogę utworzyć szablon bazowy dla mojego projektu, z którego mogą korzystać wszystkie aplikacje? Czy muszę utworzyć szablon podstawowy dla każdej aplikacji? I gdybym chciał, żeby były takie same, po prostu je skopiowałbym?

Author: heri0n, 2013-02-06

3 answers

Oczywiście, że możesz. Szybki przykład bazy.html

<!DOCTYPE html>
<html>
    <head>
        <title>My Project</title>
    </head>

    <body>
    {% block content %}{% endblock content %}
    </body>
</html>

I powiedz, że masz aplikację o nazwie myapp z widokiem.strona html,

{% extends "base.html" %}

{% block content %}
    <h2>Content for My App</h2>
    <p>Stuff etc etc.</p>
{% endblock content %}

Poświęć trochę czasu, aby przeczytać dokumenty aby uzyskać więcej informacji

 57
Author: Kenny Shen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-03 06:30:39

Tak, możesz to zrobić. Używając znaczników szablonów extends i include w szablonach Django.

Zaczynam się uczyć Django i ostatnio to rozgryzłem. Mój kod znajduje się na Github , jeśli jesteś zainteresowany przyjrzeniem się, jak struktura szablonów Django dziedziczy po base.html, a następnie include typowych rzeczy, takich jak navbar i Nagłówek, Stopka itp.

 6
Author: redDragonzz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-06 03:42:04

Jest jakiś problem w ostatniej odpowiedzi i tutaj jest poprawna; musisz mieć bazę.html jak ten:

{% load staticfiles %}

<!DOCTYPE html>
<html>
<head>
    <title>My Project</title>
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>

A także dla indeksu.html

{% extend "appname/base.html" %}
{% block content %}
     <h1>test</h1>
{% endblock %}
 6
Author: Mohammad.Gh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-30 06:34:49