2016-03-30 17 views
0

Extending the User Model belgelerini uyguladıktan sonra profil alanlarından hiçbirini alamıyorum. app/şablonlar/chooser.html içinde app/views.pyDjango (1.9.4) 'de genişletilmiş profile nasıl erişilir?

from django.shortcuts import render 
from django.contrib.auth.decorators import login_required 

@login_required 
def home(request): 
    return render(request, 'chooser.html') 

yılında

kullanıcıların/models.py

from django.db import models 
from django.contrib.auth.models import User 

class Profile(models.Model): 
    # Fields 
    user = models.OneToOneField(User, on_delete-models.CASCADE) 

    is_good = models.BooleanField(default=False) 

{% if user.is_authenticated %} 
{% if user.is_good %} 
<h1>Good Boy</h1> 
{% endif %} 
{% endif %} 

Tüm hesaplarla çalışmalı, ama yapmamalı.

hata ayıklama etkinleştirdikten sonra ben sadece tek bir sql istek olduğunu görüyoruz: SELECT * FROM auth_user WHERE id=8

Django ayıklama araç çubuğu (İstek Bölümü)

u'_auth_user_backend' 
u'django_auth_ldap.backend.LDAPBackend' 
u'_auth_user_hash' 
u'a72bee1aebbd30db244468ff794d7ef907c7d865' 
u'_auth_user_id' 
u'8' 

Hesap LDAP'de var (ve ondan autosynced kaydedildiği ifade edildi django yerel DB'ye). Profil, is_good boolean içerecek şekilde manuel olarak düzenlenmiştir. Yönetici satır içi beklendiği gibi çalışır.

Burada yanlış yapıyorum. denetlenirken

cevap

1

Sen Kullanıcı bilgilerini başvurmak zorunda kullanıcı is_good

{% if user.profile.is_good %} 
<h1>Good Boy</h1> 
{% endif %} 
eğer
İlgili konular