App routing is used to map the specific URL with the associated function that is intended to perform some task. It is used to access some particular page like Flask Tutorial in the web application.
In our first application, the URL (‘/’) is associated with the home function that returns a particular string displayed on the web page.
In other words, we can say that if we visit the particular URL mapped to some particular function, the output of that function is rendered on the browser’s screen.
Consider the following example.
Example
from flask import Flask
app = Flask(__name__)
@app.route('/home')
def home():
return "hello, welcome to our website";
if __name__ =="__main__":
app.run(debug = True)
Flask facilitates us to add the variable part to the URL by using the section. We can reuse the variable by adding that as a parameter into the view function. Consider the following example.
Example
from flask import Flask
app = Flask(__name__)
@app.route('/home/<name>')
def home(name):
return "hello,"+name;
if __name__ =="__main__":
app.run(debug = True)
It will produce the following result on the web browser.
The converter can also be used in the URL to map the specified variable to the particular data type. For example, we can provide the integers or float like age or salary respectively.
Consider the following example.
Example
- from flask import Flask
- app = Flask(__name__)
-
- @app.route('/home/<int:age>')
- def home(age):
- return "Age = %d"%age;
-
- if __name__ =="__main__":
- app.run(debug = True)
The following converters are used to convert the default string type to the associated data type.
- string: default
- int: used to convert the string to the integer
- float: used to convert the string to the float.
- path: It can accept the slashes given in the URL.
The add_url_rule() function
There is one more approach to perform routing for the flask web application that can be done by using the add_url() function of the Flask class. The syntax to use this function is given below.
add_url_rule(<url rule>, <endpoint>, <view function>)
This function is mainly used in the case if the view function is not given and we need to connect a view function to an endpoint externally by using this function.
Consider the following example.
Example
- from flask import Flask
- app = Flask(__name__)
-
- def about():
- return "This is about page";
-
- app.add_url_rule("/about","about",about)
-
- if __name__ =="__main__":
- app.run(debug = True)
Leave a Reply