url(r'^$', 'PersonRegistration', name = 'Home Page'),
url(r'^$', 'LoginRequest', name = 'Home Page'),
зачем вы вписали две строки? у вас в обеих строках одно и то же условие.
а следовательно, каак только первое условие выполнится, дальше проверка не пойдёт адреса и вы попадёте всегда на PersonRegistration.
сделайте просто разные адреса в формах
urlpatterns = patterns('users.views',
url(r'^/register$', 'PersonRegistration', name = 'Home Page'),
url(r'^/login$', 'LoginRequest', name = 'Home Page'),
)
и в html поправьте атрибут action с учётом адресов.
если вам нужно рендрить одно и то же, то не чего ен мешает рахнести так же это по разным контроллёрам а вызывать потом для вывода страницы один и тот же.
например у вас страница выводится в контроллёре
def index(request):
...
return render....
тогда просто сделайте
в свойих формах реги и входа в конце
return index(request)