На моем веб-сайте я не могу отобразить user.fname. Все остальное в пользователе, например user.username, user.email и user.password, но я не могу отобразить это имя.Django User Class (django.contrib.auth) fname не работает
PS: ив пытался user.fname, user.name, user.name, user.first_name до сих пор никто ничего дисплея
EDIT:
user = request.user
if request.user.is_authenticated():
fname = request.user.get_short_name()
return render(request, 'student/dashboard.html', {'user': user, 'fname': fname})
Я добавил, но я до сих пор не могу называть его по какой-то причине (это мое мнение)
class RegisterForm(forms.Form):
GRADE_CHOICES = (
(9,'9'), (10,'10'), (11,'11'), (12,'12') ,
)
curr_year = date.today().year
GRAD_YEAR_CHOICES = (
(curr_year,curr_year), (curr_year+1,curr_year+1), (curr_year+2,curr_year+2), (curr_year+3,curr_year+3) ,
)
fname = forms.CharField(max_length = 25)
lname = forms.CharField(max_length = 25)
emailid = forms.EmailField()
passwd1 = forms.CharField(max_length=100,widget=forms.PasswordInput)
passwd2 = forms.CharField(max_length=100,widget=forms.PasswordInput)
gradyear = forms.ChoiceField(choices=GRAD_YEAR_CHOICES)
grade = forms.ChoiceField(choices=GRADE_CHOICES)
Это в моем forms.py
Вы получаете какую-либо ошибку? Вы проверили базу данных? Вы разместили точку останова отладки и увидели, какой объект request.user имеет место? Есть вероятность, что ваше условие if не работает. Потому что для анонимного пользователя эти вещи пустые –
, когда я изменил fname на строку, она отображается. Поэтому я добавляю, что user.fname пуст, по какой-то причине @VishalSh –
Добавьте точку останова в ваш stat и посмотрите на объект request.user. Также проверьте таблицу 'auth_user' и пройдите через записи там. Кроме того, используйте 'request.user.first_name' –