Tips and Tricks

What is django-userena?

django-userena is a Django application that supplies your Django project with full account management. It’s a fully customizable application that takes care of the signup, activation, messaging and more.

How to install django-userena?
You can install the latest version of django-userena using:
pip install django-userena

Source Code:

How to setup django-userena?
Add AUTHETICATION_BACKEND tuple as given below:


Add userena, gaurdian and easy_thumbnails to your INSTALLED_APPS settings of your project.

The URI’s
Userena has a URLConf that sets all the url’s and views for you. This should be included in your project’s URLConf. For example, if you wants the urls to show up under ‘/accounts/’, add the following under urlpattern in you URLConf.

(r'^accounts/', include('userena.urls')),

Required Settings
1. Django-guardian requires you to set the ANONYMOUS_USER_ID setting.


2. Set AUTH_PROFILE_MODULE point to the model that is your custom made profile.For example: set AUTH_PROFILE_MODULE to the path of MyProfile

from userena.models import UserenaBaseProfile

class MyProfile(UserenaBaseProfile):
    user = models.OneToOneField(User,
    favourite_snack = models.CharField(_('favourite snack'),

3. To integrate with Django, you need to alter three settings to reflect in you URI.
For example, if your userena lives under ‘/accounts/’

LOGIN_REDIRECT_URL = '/accounts/%(username)s/'
LOGIN_URL = '/accounts/signin/'
LOGOUT_URL = '/accounts/signout/'

References:django-userena documentation


What is Transifex?

Transifex is an open source platform for localization. It is a service offering users with an easy-to-use interface to submit translations to various projects hosted on a number of hosting platform types.

What is virtualenv?

virtualenv is a tool to build isolated Python environments. It’s a great way to quickly test new libraries without cluttering your global site-packages or run multiple projects on the same machine which depend on a particular library but not the same version of the library.

How to install virtualenv?

You can install the virtualenv by running
easy_install virtualenv
pip install virtualenv

You can install easy_install using:
pip install setuptools

How to activate virtualenv?

Once you have successfully installed virtualenv, you can use it to create virtual environments by running:
virtualenv --no-site-packages site

Activate the virtualenv using:
source site/bin/activate
. site/bin/activate

How to install Transifex?

Now create a fork of Transifex from bitbucket, clone the repository and install
cd site
hg clone
cd transifex

python develop

But the latest tip requires Django==1.3.1,so to upgrade django use:
pip install Django --upgrade

To install the other modules(if required) in virtualenv using:
pip install <module name>

To install the userprofile module from the use:
pip install

To install the django-piston, for creating application programming interface(APIs) use:
easy_install django-piston

How to configure Transifex?

Now to install the server use:
cd transifex
./ txcreatedirs                       #Create necessary directories
./ syncdb                                     # Setup DB tables, create superuser
./ migrate                                   # Setup more DB tables

While running ./ migrate, it raised a resources migration error, for that I removed the respective the resource migration file from resources/migrations to succeed migration.

./ txlanguages                          # Create a standard set of languages
./ txcreatenoticetypes       # Create a standard set of notice types
./ collectstatic                     #Copy all the addons files to the static dir
./ runserver 8000                   #Start the development server

Now that the server‘s running, visit with your Web browser.


I have been trying to install Askbot using virtualenv.Askbot is an open source an Q&A forum which is written in Python and Django and virtualenv is a tool to create isolated Python environments.

You can get a brief introduction about virtualenv here.After installing virtualenv, activate the the virtualenv using the following steps:

First of all, create a project dir with virtualenv.

$cd /home/development
$virtualenv site --no-site-packages
$. site/bin/activate

Now copy the sources of askbot for customize and install

$cd /home/developments/site/
$git clone git://
$cd askbot-devel
#python develop

Now move to the sub directory /home/development/site, and execute the command

$cd /home/development/site

When prompted for the name of the directory type forum.Now, edit the file accordingly.

Execute the commands ‘python syncdb’ ‘python migrate’.
Now run the development server:
$python runserver
Go to the browser and enter the URL as

While executing the command, python develop, in virtualenv, I often faced the problem of module missing. In that case I usually used the command
$pip install -E site
This would install the modules in the /lib/python2.7/site-packages/ directory inside the virtualenv.

But I eventually got stuck in a problem with the module functional,Though I installed the package celery and django-celery, it did not help. At last Evgeny helped me sort out the problem. A detail conversation and the solution is shown here.

Recently,I was having problems on installing via yum via proxy..after a bit searching on google i found a the way to configure yum through proxy.
Edit the yum.conf file in /etc/ folder
$vi /etc/yum.conf

save the file and now you can use yum through proxy.

%d bloggers like this: