I would like to explain how and why we use virtualenv and virtualenvwrapper when we develop apps using Django.
We usually work on multiple projects in a single system. Each project might(mostly will) have different versions of dependencies. Lets say, I work on Django 1.5 for one project and Django 1.7 for another. So, it is always advisable to isolate the environments. This way, we can install all the dependencies of a project in one environment and easily switch between different environments when switching different projects.
We can activate virtual environments in two ways:
1. virtualenv source /path/to/envname/bin/activate 2. Virtualenvwrapper(easy use of virtualenv) - I prefer this way.
Install virtualenvwrapper globally
apt-get install virtualenvwrapper (use sudo if not root)
Add below line to .bashrc
export WORKON_HOME=~/.virtualenvs (or some directory name)
Create virtual environment
Use virtual env
Deactivate currently active environment
Delete virtual environment. This deletes the given environment. You have to deactivate first before deleting.
Open /path/to/envname/bin/postactivate (There are other hooks too like preactivate).
For example, we can use postactivate hook to perform some action once the environment is activated.
I use this to go to the project directory after activing the environment.
I would add
in postactivate hook so after running below command:
then the current working directory will be changed to the /path/to/project (as provided in the /path/to/envname/bin/postactivate hook)
Now, since you got the environment ready, you can start installing Django(lets say) after activating the corresponding environment.
pip install Django This will install the latest stable version of Django from pypi.
If you want to install particular version, you need to use double equals(==):
pip install Django==1.6.7
We develop web applications to our customers using python/django/angular.
Contact us at email@example.com