Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

django specific settings app

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!

like image 280
Michael Avatar asked Feb 25 '12 18:02

Michael


People also ask

What is app config in Django?

The AppConfig class used to configure the application has a path class attribute, which is the absolute directory path Django will use as the single base path for the application.


1 Answers

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 ;).

like image 179
Chris Pratt Avatar answered Sep 27 '22 19:09

Chris Pratt