Bird
Raised Fist0
Flaskframework~5 mins

Route decorator (@app.route) in Flask - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of the @app.route decorator in Flask?
The @app.route decorator tells Flask which URL should trigger a specific function. It connects a web address to the code that runs when that address is visited.
Click to reveal answer
beginner
How do you define a route for the home page using @app.route?
You use @app.route('/') above a function. This means when someone visits the root URL (like 'http://localhost:5000/'), Flask runs that function.
Click to reveal answer
intermediate
Can @app.route handle different HTTP methods? How?
Yes. You can add the methods argument like @app.route('/path', methods=['GET', 'POST']) to tell Flask which HTTP methods the route accepts.
Click to reveal answer
intermediate
What happens if two functions have the same route with @app.route?
Flask will use the last function defined for that route, overwriting the previous one. This can cause unexpected behavior, so routes should be unique.
Click to reveal answer
beginner
How can you capture a variable part of the URL using @app.route?
You use angle brackets in the route like @app.route('/user/<username>'). Flask passes the value in the URL to the function as an argument.
Click to reveal answer
What does @app.route('/about') do in a Flask app?
AImports the Flask module
BCreates a new Flask app
CStarts the Flask server
DLinks the URL '/about' to a function that runs when visited
How do you allow a route to accept both GET and POST requests?
AAdd <code>methods=['GET', 'POST']</code> in <code>@app.route</code>
BUse <code>@app.methods(['GET', 'POST'])</code>
CSet <code>app.methods = ['GET', 'POST']</code>
DFlask routes accept all methods by default
What will Flask do if two functions have the same route?
AThrow an error and stop the app
BUse the last defined function for that route
CRun both functions in order
DIgnore the second function
How do you capture a username from the URL in Flask?
AUse <code>@app.route('/user/&lt;username&gt;')</code>
BUse <code>@app.route('/user/:username')</code>
CUse <code>@app.route('/user/username')</code>
DUse <code>@app.route('/user?username')</code>
What URL does @app.route('/') represent?
AA 404 error page
BThe about page
CThe home or root page
DA static file
Explain how the @app.route decorator works in Flask and how it connects URLs to functions.
Think about how you tell Flask what to do when someone visits a web page.
You got /4 concepts.
    Describe how to create a dynamic route in Flask that accepts a username from the URL.
    Imagine you want to greet different users by name in the URL.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the @app.route decorator do in a Flask application?
      easy
      A. It connects a URL path to a specific function that runs when that URL is visited.
      B. It creates a database connection for the app.
      C. It styles the HTML pages served by Flask.
      D. It starts the Flask server automatically.

      Solution

      1. Step 1: Understand the role of @app.route

        The decorator @app.route is used to link a URL path to a function in Flask.
      2. Step 2: Identify what happens when the URL is visited

        When a user visits that URL, Flask runs the linked function to generate a response.
      3. Final Answer:

        It connects a URL path to a specific function that runs when that URL is visited. -> Option A
      4. Quick Check:

        @app.route links URL to function [OK]
      Hint: Remember: @app.route maps URLs to functions [OK]
      Common Mistakes:
      • Thinking @app.route starts the server
      • Confusing it with database setup
      • Assuming it styles pages
      2. Which of the following is the correct syntax to create a route for the URL path /home in Flask?
      easy
      A. @app.route('/home')\ndef home():\n return 'Welcome!'
      B. app.route('/home')\ndef home():\n return 'Welcome!'
      C. @app.route('/home')\nreturn 'Welcome!'
      D. @app.route('/home')\ndef home:\n return 'Welcome!'

      Solution

      1. Step 1: Check the decorator syntax

        The correct decorator syntax uses @app.route('/home') placed immediately before a function definition.
      2. Step 2: Verify the function definition and return statement

        The function must be defined with parentheses and a colon, and it returns a string response.
      3. Final Answer:

        @app.route('/home')\ndef home():\n return 'Welcome!' -> Option A
      4. Quick Check:

        Decorator + function with parentheses = correct syntax [OK]
      Hint: Decorator needs @ and function needs () and : [OK]
      Common Mistakes:
      • Missing @ before app.route
      • Omitting parentheses in function definition
      • Placing return outside function
      3. What will be the output when visiting the URL /user/42 given this Flask code?
      @app.route('/user/<int:id>')
      def show_user(id):
          return f"User ID is {id}"
      medium
      A. User ID is <int:id>
      B. User ID is 42
      C. 404 Not Found error
      D. User ID is id

      Solution

      1. Step 1: Understand the route with variable part

        The route /user/<int:id> captures an integer from the URL and passes it as the argument id to the function.
      2. Step 2: Check the function output

        The function returns a string with the captured id value inserted using an f-string.
      3. Final Answer:

        User ID is 42 -> Option B
      4. Quick Check:

        Variable URL part passes 42 to function [OK]
      Hint: Variable parts in < > pass values to function [OK]
      Common Mistakes:
      • Thinking is printed literally
      • Expecting a 404 error without reason
      • Confusing variable name with string
      4. Identify the error in this Flask route code:
      @app.route('/hello')
      def hello():
      print('Hello World')
      return 'Hello!'
      medium
      A. The return statement is outside the function.
      B. The route decorator is missing parentheses.
      C. The function name is invalid.
      D. The function body is not indented properly.

      Solution

      1. Step 1: Check indentation inside the function

        Python requires the function body to be indented. Here, print and return are not indented under def hello():.
      2. Step 2: Verify decorator and function syntax

        The decorator has correct parentheses and the function name is valid, so no errors there.
      3. Final Answer:

        The function body is not indented properly. -> Option D
      4. Quick Check:

        Python needs indented function bodies [OK]
      Hint: Indent function code under def line [OK]
      Common Mistakes:
      • Forgetting to indent function body
      • Removing parentheses from decorator
      • Misnaming the function
      5. You want to create a Flask route that accepts a username in the URL like /profile/john and returns Hello, john!. Which code correctly achieves this?
      hard
      A. @app.route('/profile/<username>')\ndef profile():\n return f'Hello, {username}!'
      B. @app.route('/profile/')\ndef profile(username):\n return f'Hello, {username}!'
      C. @app.route('/profile/<username>')\ndef profile(username):\n return f'Hello, {username}!'
      D. @app.route('/profile/username')\ndef profile():\n return 'Hello, username!'

      Solution

      1. Step 1: Use variable URL part for username

        The route must capture username as a string variable using <username> in the URL.
      2. Step 2: Define function with matching parameter and return greeting

        The function must accept username as a parameter and return the greeting using an f-string.
      3. Final Answer:

        @app.route('/profile/<username>')\ndef profile(username):\n return f'Hello, {username}!' -> Option C
      4. Quick Check:

        Variable URL + matching param + f-string = correct [OK]
      Hint: Match variable name in route and function parameter [OK]
      Common Mistakes:
      • Using for a string username
      • Not passing username parameter to function
      • Hardcoding username in route path
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard