LearnThatStack Ace your next interview
Flask · question
Question 5 of 60

What is URL building and how do you use url_for()?

beginner
← All Flask questions
Re-explain

URL building means generating a URL from an endpoint name instead of typing the path by hand. url_for() takes the endpoint, usually the view function's name, plus a keyword argument for each URL variable.

from flask import url_for

@app.route('/user/<username>')
def user_profile(username):
    return f'Profile for {username}'

@app.route('/')
def index():
    # Generate URL for user_profile endpoint
    profile_url = url_for('user_profile', username='john')
    return f'<a href="{profile_url}">John\'s Profile</a>'

Here url_for('user_profile', username='john') returns /user/john. Arguments that match no URL variable become query parameters. This reverse lookup has three benefits:

  • Changing a route updates every link that uses its endpoint.
  • Special characters are escaped for you.
  • The paths are absolute, and they stay correct when the app is mounted under a prefix.
Rewriting in plainer words…

This answer doesn't lend itself to a diagram - it reads best . No credits were charged.

Why there's no diagram: “”

The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓

The diagram below the answer is the concept . Jump to it ↓

Tailored explanation · switch back to · ·
What should the new diagram focus on?
How well did you know this?
AI:

Saved in this browser - sign in to keep your review list.

How should your speech become text?

Listening… your words appear above as you speak - tap Stop when you're done.

Recording · cr - tap Stop & transcribe when you're done.

Transcribing with AI…

Voice:

Keep going - a few more words and AI can grade it.

Interview lens

Likely follow-ups, what you can say, and the weak answers to avoid.

Sign in free to open it Free account - the lens opens as soon as you're back.

Want a quick review of the fundamentals? See the Flask cheatsheet.

← Back to all Flask questions
Pro · $10/mo

51 of 60 Flask answers are in Pro.

Full answers, code samples, and AI explanations that go simpler or deeper. Cancel anytime.

  • Full answers + code
  • AI explanations, simpler or deeper
  • 1,000 AI credits / month
  • Cancel anytime