Using the model below, I am trying to extend User. And with the related view I am trying to reach the method of AnkediDolduran model.
authonticate() gives me a User instance, right? How can I reach the method of the model AnketiDolduran using this instance of User?
Thanks in advance.
class AnketiDolduran(models.Model):
'''Anketi dolduran kişilere ait bilgileri saklar.'''
UNVANLAR = (
('AR', 'Araştırma Görevlisi'),
('OK', 'Okutman'),
('OG', 'Öğretim Görevlisi'),
('YR', 'Yardımcı Doçent Doktor'),
('DO', 'Doçent Doktor'),
('PR', 'Profesör Doktor'),
)
title = models.CharField('ünvan', max_length=2,
choices=UNVANLAR,
default='Yardımcı Doçent Doktor',
help_text = 'Lütfen ünvanınızı giriniz')
university = models.CharField('üniversite', max_length = 100, help_text = 'Görev yaptığınız üniversiteyi belirtiniz')
department = models.CharField('bölüm', max_length = 100, help_text = 'Görev yaptığınız bölümü belirtiniz')
# Using this I am extending user model, I guess. Am I right?
user = models.OneToOneField(User)
def __unicode__(self):
return u'%s %s' % (self.user.first_name, self.user.last_name)
def arastirma_gorevlisi_mi(self):
'''Anketi dolduran kişi araştırma görevlisiyse TRUE döndürüyor.'''
return self.title in ('AR', )
def ogretim_uyesi_mi(self):
'''Anketi dolduran araştırma görevlisinden başka bir şeyse TRUE döndürüyor.'''
return self.title in ('OK', 'OG', 'YR', 'DO', 'PR')
def giris(request):
context_instance = RequestContext(request)
if request.method == 'POST':
username = request.POST['user']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
#how can I reach this object through user?
if user.anketidolduran_set.arastirma_goverlisi_mi():
print 'arastirma_gorevlisi_mi()'
return redirect('anketler/bke_olcegi')
if anketidolduran.ogretim_uyesi_mi():
print 'ogretim_uyesi_mi()'
return redirect('anketler/performans_degerlendirme')
else:
pass
else:
return render_to_response('registration/login.html', context_instance=context_instance)
Mehmet Gültaş | Research Assistant | Department of Psychology | Middle East Technical University