{"id":2225,"date":"2019-07-06T19:15:59","date_gmt":"2019-07-06T17:15:59","guid":{"rendered":"https:\/\/pythonprogramming.altervista.org\/?p=2225"},"modified":"2019-09-20T18:13:44","modified_gmt":"2019-09-20T16:13:44","slug":"flask-7-the-if-condition","status":"publish","type":"post","link":"https:\/\/pythonprogramming.altervista.org\/flask-7-the-if-condition\/","title":{"rendered":"Flask 7 &#8211; The if condition"},"content":{"rendered":"<p>The if condition in the html page to get data and condition depending on routes.py data. It is very useful to make some elements of the page to be visible or not depending on boolean variables that are stored in the routes.py file. In the following video it will be shown a way you can use this at your advantage.<\/p>\n<p><iframe loading=\"lazy\" title=\"Flask 7: The if condition (a blog with Python)\" width=\"747\" height=\"420\" src=\"https:\/\/www.youtube.com\/embed\/kltSA06EJhc?feature=oembed&amp;enablejsapi=1\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p>the routers.py file<\/p>\n<pre class=\"lang:default decode:true \">from flask import render_template\r\nfrom blog import app\r\n\r\n@app.route(\"\/\")\r\ndef homepage():\r\n    posts = [\r\n        \r\n        {\"title\": \"Post nr. 1\",\r\n        \"body\": \"This is the first post of my blog\",\r\n        \"author\": \"Giovanni Pyhton\",\r\n        \"date\": \"06\/07\/2019\"},\r\n\r\n        {\"title\": \"Post. nr.2\",\r\n        \"body\": \"Hello... we're back, with the second post\",\r\n        \"author\": \"Giovanni Pyhton\",\r\n        \"date\": \"06\/07\/2019\"}\r\n    ]\r\n\r\n    author = True\r\n    date = False\r\n\r\n\r\n    return render_template(\"homepage.html\", posts=posts, author=author, date=date)<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>The homepage.html<\/p>\n<pre class=\"lang:default decode:true \">&lt;html&gt;\r\n\r\n&lt;style&gt;\r\n\r\nbody {\r\ncolor: coral;\r\nbackground-color: black;\r\n\r\n}\r\n\r\n&lt;\/style&gt;\r\n\r\n&lt;body&gt;\r\n\r\n&lt;h1&gt;Welcome to our Homepage&lt;\/h1&gt;\r\n\r\n{% for post in posts %}\r\n    &lt;h3&gt; {{ post.title }}&lt;\/h3&gt;\r\n    &lt;p&gt;{{ post.body }}&lt;\/p&gt;\r\n\r\n    {% if author %}\r\n    &lt;span style=\"font-size:0.5em;color:yellowgreen\"&gt;{{ post.author }} &lt;\/span&gt;\r\n    {% endif %}\r\n    \r\n    {% if date %}\r\n    &lt;span style=\"font-size:0.5em;color:yellowgreen\"&gt;{{ post.date }}&lt;\/span&gt;\r\n    {% endif %}\r\n \r\n{% endfor %}\r\n\r\n\r\n\r\n&lt;\/body&gt;\r\n\r\n\r\n&lt;\/html&gt;<\/pre>\n<script>\r\n\tif (typeof title != \"undefined\")\r\n\t{\r\n\t\tlet title = \"Flask\";\r\n\t\tlet links = []\r\n\t}\r\n\telse \r\n\t{\r\n\t\ttitle = \"Flask\";\r\n\t}\r\n\r\nlinks = [\r\n\t\t\t\/\/ -------------------20.9.2019 ---------------------------------\r\n[\"https:\/\/pythonprogramming.altervista.org\/how-to-render-html-into-flask-variables-passed-to-the-pages\/\",\r\n \"Render HTML in Flask\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-12-add-a-navigation-bar-to-the-blog\/\",\"Add a menu (11)\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/python-flask-on-glitch-edited-with-visual-studio-code\/\",\"Visual Studio Code on Glitch (with flask)\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-11-bootstrap\/\",\"Bootstrap with Flask(10)\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/put-our-flask-blog-on-glitch-com-for-free\/\",\"Free blog with Flask and Glitch.me\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-9-use-css-in-the-template\/\",\"Css on Flask (9)\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-8-templates\/\",\"Templates in Flask (8)\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-7-the-if-condition\/\",\"The if condition - Flask 7\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-6-jinga2-and-code-into-html-pages\/\",\"jinga2 and code in Html page in Flask (6)\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/python-and-flask-blog-part-5\/\",\"Python and flask 5\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/setting-up-flask-to-make-our-blog\/\",\"Setting up Flask 5\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-p-3-lets-make-the-first-web-pages\/\",\"Flask 1st web page 4\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/flask-2-use-visual-studio-code-in-the-environment\/\",\"Visual code and Flask 3\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/install-flask-in-a-brand-new-environment\/\",\"Flask in a new Python environment 2\"],\r\n[\"https:\/\/pythonprogramming.altervista.org\/on-the-web-with-python-and-flask-1\/\",\"Web with flask 1\"]\r\n];\r\n\t\t\r\n\t<\/script>\r\n<script>\r\n\t\r\nif (typeof next2 != \"undefined\"){let next2 = 0;}\r\n\t\r\nnext2 = 0;\r\n\thtml = \"\";\/\/<b style='color:coral;font-size:1.2em'>Other posts about \" + title + \"<\/b><br>\";\r\nfor (address of links) \r\n{\r\n\r\n\tif (next2 == 1){\r\n\t\thtml += \"<div style='background:coral'>\";\r\n\t\thtml += \"Next link => <a href='\" + address[0] + \"'>\" + address[1] + \"<\/a>\";\r\n\t\thtml += \"<\/div><br>\";\r\n\t\tnext2 = 0;\r\n\t}\r\n\tif (address[0] == document.URL) {\r\n\t\tnext2 = 1;\r\n\t}\r\n}\r\n\r\nif (typeof next != \"undefined\") {let next = 0;}\r\nif (typeof addressStart != \"undefined\") {let addressStart = \"\";}\r\nnext = 0;\r\naddressStart = \"<a href='\";\r\nfor (address of links) {\r\n\tif (next == 1){\r\n\t\thtml += \">>>\" + addressStart + address[0] + \"'>\" + address[1] + \"<\/a><br>\";\r\n\t\tnext = 0;\r\n\t}\r\n\telse if (addressStart + address[0] != document.URL)\r\n\t{\r\n\t\thtml += addressStart + address[0] + \"'>\" + address[1] + \"<\/a><br>\";\r\n\t}\r\n\telse\r\n\t{\r\n\t\tnext = 1;\r\n\t\tnext_address = address[0]\r\n\t\tnext_title = address[1]\r\n\t\thtml += \"<span style='color:gray'>\" + address[1] + \"<\/span><br>\";\r\n\t}\r\n\r\n}\r\n\r\n\thtml += `<span style=\"font-size:8px\">Powered by <a href=\"https:\/\/pythonprogramming.altervista.org\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2673\" src=\"https:\/\/pythonprogramming.altervista.org\/wp-content\/uploads\/2019\/06\/altervista2.png\" alt=\"\" width=\"70\" height=\"25\" srcset=\"https:\/\/pythonprogramming.altervista.org\/wp-content\/uploads\/2019\/06\/altervista2.png 156w, https:\/\/pythonprogramming.altervista.org\/wp-content\/uploads\/2019\/06\/altervista2-150x56.png 150w\" sizes=\"auto, (max-width: 70px) 100vw, 70px\" \/>pythonprogramming.altervista.org<\/a><\/span>`\r\n\thtml = \"<div style='background:yellow'>\" + html + \"<\/div>\";\r\n\tdocument.write(html)\r\n<\/script>\n","protected":false},"excerpt":{"rendered":"Show the information you need with the if condition with Jinja2.\n<a class=\"moretag\" href=\"https:\/\/pythonprogramming.altervista.org\/flask-7-the-if-condition\/\"> [...]<\/a>","protected":false},"author":1,"featured_media":2226,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","footnotes":""},"categories":[420],"tags":[346,20,430],"class_list":["post-2225","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-flask","tag-flask","tag-if","tag-jinga2"],"avopt_banners_inside_post":true,"avopt_banners_on_page":true,"av_copy_from":"","av_sharing_message":"","av_sharing_allowed":false,"av_sharing_on":{"fb":[],"tw":[]},"av_allow_affiliate_banner":false,"av_allow_affiliate_multi_banner":false,"av_show_affiliation_buy_button":false,"av_post_rating":true,"av_have_post_rating_value":false,"av_is_artificial_intelligence_content":false,"_links":{"self":[{"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/posts\/2225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/comments?post=2225"}],"version-history":[{"count":2,"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/posts\/2225\/revisions"}],"predecessor-version":[{"id":3705,"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/posts\/2225\/revisions\/3705"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/media\/2226"}],"wp:attachment":[{"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/media?parent=2225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/categories?post=2225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pythonprogramming.altervista.org\/wp-json\/wp\/v2\/tags?post=2225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}