django specific settings app
Asked Answered
R

1

11

I am working on a django app that needs a directory to download and store files.

I want to keep my app reusable so I do not want to hard code the path of this directory. So I want to make this path a setting/a global variable that can be set up.

Where could I put this setting/global variable?

Is this kind of approach good ? http://blog.muhuk.com/2010/01/26/developing-reusable-django-apps-app-settings.html

Thanks for your advice!

Recife answered 25/2, 2012 at 18:41 Comment(4)
Welcome to Stack Overflow! Great first question.Mensuration
Broken link at muhuk.com.Tsar
link still doesn't work, but google's cache helps out: webcache.googleusercontent.com/…Zygodactyl
This is the new location of the link.Boilermaker
D
12

I use the following methodology:

# some file in your app:

from django.conf import settings

MY_APP_SETTING = getattr(settings, 'MY_APP_SETTING', 'some default value')

This effectively allows end-users to customized the setting in their own settings.py, but still ensures that there's always some default value set. You can now use MY_APP_SETTING at will in the rest of your code.

UPDATE

The link in your question was taking too long to load, so I just went ahead and answered. As it turns out, the method I suggested is the same as what it suggests, so yes, I'd consider that approach good ;).

Dunedin answered 25/2, 2012 at 18:45 Comment(1)
Sad part is that it won't make sense if the said setting can't have any default value (an API key, for instance)Whenas

© 2022 - 2024 — McMap. All rights reserved.