clime
clime

Reputation: 8885

Django apps: installing system-wide vs project-wide

What are pros/cons (regarding maintainability) of installing django apps system-wide vs installing them project-wide? Is there a recommended aproach?

Upvotes: 0

Views: 151

Answers (2)

almalki
almalki

Reputation: 4775

The recommended approach is not to copy any reusable app inside you project. They provide extension points and settings to customize. Also, it is recommended to use virtualenv for projects and install any project specific python modules there. This will protect you from different versions conflicts.

Upvotes: 1

jvc26
jvc26

Reputation: 6503

By django extensions, do you mean django-extensions?

In all honesty, I'd steer clear of system wide installations, they instantly tie you to the system's installed versions, and if incompatibilities arise system-wide, that is a bigger issue than with a project-wide approach. In addition, they add complexity when deploying to remote services, and don't stick to the 12 Factor App principles. Keeping everything self contained, project code and its dependencies will make life easier in the long run.

I'd recommend using virtualenv and pip to install your dependencies, which keeps them isolated to the project in question, and dramatically simplifies deployment.

Upvotes: 3

Related Questions