Mr. Nun.
Mr. Nun.

Reputation: 850

Django user display - how to pass user data?

I want do display some of my logged in user's username, and the django template translate it to nothing. my code:

HTML:

<h3 class="form-title">Welcome '{{ request.user.get_username }}'</h3>

view:

def login_screen(request,template_name):
    username = password = ''
    args={}
    args.update(csrf(request))
    state = "Please log in below..."
    args['state'] = state
    if request.POST:
        username = request.POST.get('username')
        password = request.POST.get('password')
        if not User.objects.filter(username=username).exists():
            user = User.objects.create_user(username=username,email=username,password=password)
        user = authenticate(username=username, password=password)
        if user is not None:
                login(request, user)
                state = "You're successfully logged in!"
                args['state'] = state
                return render_to_response('good_page.html',args)
        else:
            state = "Your username and/or password were incorrect."
    args['state'] = state
    return render_to_response('login_page.html',args)

thx

Upvotes: 1

Views: 285

Answers (1)

Geo Jacob
Geo Jacob

Reputation: 6009

Add this code in your views.

args['request'] = request

HTML

<h3 class="form-title">Welcome {{ request.user.username }}</h3>

Upvotes: 1

Related Questions