"HELLO WORLD" - Python Flask


We need to test our python flask setup before we move further and learn big thing. To try out the setup that we did in last part of this tutorial, we need to create a small "Hello World" program and run in on the browser to check if everything is working good. So let's begin.

Write the following code in your text editor, I prefer Sublime text.

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
   return 'Hello World’

if __name__ == '__main__':
   app.run()
 
What the above code does?
Well, the above code creates a Flask class object. Then it calls the constructor and passes the current module name (__name__) . Once the constructor is called, a route() function is called which defines the calling of functions for each URL. In other words, route() tells what has to be done when some URL is requested by the client.

We will go through each line of statement one by one but before that, we need to test if the Flask is working as per our requirements or not! So, to run the above project, go to terminal / command prompt and type the below code.

python hello.py

NOTE: hello.py is the name of file in which we will write the above code.

Once the above code is run, you will get a message on the console like the one below:


* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

To see the output on browser, navigate to the URL shown in the console and see if everything seems to be good.

Now, once everything is working fine, let us go through some line of codes in above snippet.


The route function


app.route(rule, options)

The route function takes in two parameters to define the work flow of the requested URL.
  • The rule - this represents defines the URL binding with the function.
  • The options - this is a list of parameters to be forwarded to the underlying Rule object

In the example demonstrated above, The  ‘/’ URL is bound with hello_world() function. So, when the home page is requested by the client, the output of this function will be rendered.


The app.run function


app.run(host, port, debug, options)

The app.run function takes in four parameters, all of which is optional to provide.
  • host - Hostname to listen on. Defaults to 127.0.0.1 (localhost). Set to ‘0.0.0.0’ to have server available externally.
  • port - Defaults to 5000.
  • debug - Defaults to false. If set to true, provides a debug information.
  • options - To be forwarded to underlying Werkzeug server.

Debug mode

In Flask application development, we need to start / run the application by calling run() method. While development of the application, you will need to restart the application multiple times manually as the changes will be reflected only if the script is restarted. To avoid this, while the project is in development phase, you can pass debug = True in run() function to track the error, if any, and avoid restarting the project each time you make changes in the code.

app.debug = True
app.run()
app.run(debug = True)

Try making some changes in the first program you wrote, and try reading out the errors, if any, and see the changes in output.

Stay tuned, you will love things coming up in this tutorial series....

Comments

Popular Posts