Кастомные команды django

В джанго есть кастомные команды. Почему-то я открыл их для себя не так давно, о чём жалею. Вся прелесть кастомной команды в том, что она сама настраивает DJANGO_SETTINGS_MODULE. Раньше я делал это руками, что меня изрядно раздражало. А если скрипт лежал ещё и не в корне проекта, то приходилось также пихать в sys.path этот самый корень, что проимпортировать потроха проекта.

Допустим скрипт лежит в %ROOT%/app/bin/script.py. Раньше бы я написал такую кашу в начале этого скрипта:

import sys
import os
from os.path import join, dirname, realpath

sys.path.insert(0, dirname(dirname(realpath(__file__))))
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings']

Как раз эту проблему кастомная команда решает автоматически. Очень удобно оформлять различные скрипты, которые запускаются по крону, в виде кастомных команд.

Add post to:   Delicious Reddit Slashdot Digg Technorati Google
Make comment

Comments

No comments for this post

Required. 30 chars of fewer.

Required.

captcha image Please, enter symbols, which you see on the image