Evgenij LegotskojSept. 26, 2016, 2:06 p.m.

Django - Tutorial 010. Getting the variables in the template file in Django from settings.py

In settings.py file in Django we store all the necessary configuration information of our applications, which may include the site's URL or path to certain directories, which store specific files and more information.

And sometimes you want to use these variables in the template, the same site URL. But just to put this constant in the template through {{SITE_URL}} , use this variable will not work. One way of solving this problem is the registration template tag that will perform a specific functionality, for example to take the attribute of the configuration file by its name.


Register template tag

If we are talking about using SITE_URL in the template, the agreement that we have registered this variable in settings.py file.

SITE\_URL = 'www.mysite.com'

And then we go into the app, which will register the tag to retrieve the attributes of the settings.py file. In my case, this is the app home . In this application will need to create templatetags catalog and place it in two files: __init__.py and such home_extras.py .

We obtain the following structure of the application:

home/
    migrations/
    templates/
    templatetags/
        \_\_init\_\_.py
        home\_extras.py
    \_\_init\_\_.py
    admin.py
    apps.py
    models.py
    sitemap.py
    tests.py
    urls.py
    views.py

And now look home_extras.py contents.

from django import template
from django.conf import settings

register = template.Library()


@register.simple\_tag
def get\_attribute(name):
    return getattr(settings, name, "")

Using in template

And the use of the template will be even easier. You will need only to load the template tag to expand and take advantage of this tag, giving it the name of the attribute, which want to receive.

{% load home\_extras %}
{% get\_attribute 'SITE\_URL' %}"

For Django I recommend VDS-server of Timeweb hoster .

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
Support the author Donate

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Fornex

Let me recommend you a great European Fornex hosting.

Fornex has proven itself to be a stable host over the years.

For Django projects I recommend VPS hosting

Following the link you will receive a 5% discount on shared hosting services, dedicated servers, VPS and VPN

View Hosting
SK

Qt - Test 001. Signals and slots

  • Result:47points,
  • Rating points-6
VA

C++ - Test 001. The first program and data types

  • Result:13points,
  • Rating points-10
M
  • Maks
  • Sept. 18, 2022, 7:04 a.m.

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:70points,
  • Rating points1
Last comments
F

Engineering solution of a cubic equation using Vieta's trigonometric formula

красивое домашнее порно анал https://sexs-foto.com/ порно молодых русских бесплатно без регистрации порно знакомства онлайн порно блондинка с большой попой …

Qt/C++ - Lesson 035. Downloading files via HTTP with QNetworkAccessManager

Попробуйте просто вызвать метод getData в конструкторе класса

Qt/C++ - Lesson 035. Downloading files via HTTP with QNetworkAccessManager

Здравствуйте! Подскажите, пожалуйста, как сделать так, чтобы программа срабатыала без нажатия кнопки? Ну чисто при загрузке формы... Я так понимаю, надо что-то поменять в этой строчке con…
R5

Qt/C++ - Lesson 051. QMediaPlayer – simple audio player

Здравствуйте. Подскажите пожалуйста, как решить проблему multimedia модуль не распознается

Qt/C++ - Lesson 009. QTimer – How to work with timer?

Да, именно так. Но в коде без this написано - это ошибка в статье.
Now discuss on the forum
AB

Sorting the added QML elements in the ListModel

I am writing an alarm clock in QML, I am required to sort the alarms in ascending order (depending on the date or time (if there are several alarms on the same day). I've done the sorting …

Вопрос по Qt Creator

Добрый день. Не знаю, подобную проблему я не решал.

Задать другой класс div-у

Добрый день. Попробуйте использовать Selenium. Это библиотека есть в виде Python модуля и она позволяет загружать страницу и манипулировать html элементами. Как я понимаю, в ней можно…
ACh

Списки на QML

Вопрос решен с применением базы данных. Кому интересно, можете поюзать проект:) Отдельное спасибо Евгению за помощь)))Вход под админом Логин:1, пароль:1Вход под диспетчером Логин:22, пароль:2Вх…

Хочу переместить QMenuBar

Просто взять и заменить в пару строчек не получится. Qt предусматривает крайне ограниченный функционал по работе с обрамлением окон, к которому относится заголовок окна. Вообще это фу…
About
Services
© EVILEG 2015-2022
Recommend hosting TIMEWEB