Show all Flask Routes
One of my favorite things about rails is rake routes
. This command will show you all of the routes that your application is currently aware of. I was searching for something similar in Flask and came across this snippet. Sadly, it did not work for me. I am using Python 3, so that may have something to do with it. In any case, I did not have time to dig into what was wrong, because just the other day I read this amazing introduction to functional python where my biggest take away was that as soon as you see multiple for loops, its time to use map
. With my functional skills in tow, I wrote a simple one liner to print all of my routes.
@manager.command def routes(): import pprint pprint.pprint(list(map(lambda x: repr(x), app.url_map.iter_rules())))
[levlaz braindump]$ python3 manage.py routes ["<Rule '/auth/change-password' (GET, HEAD, OPTIONS, POST) -> " 'auth.change_password>', "<Rule '/auth/change-email' (GET, HEAD, OPTIONS, POST) -> " 'auth.change_email_request>', "<Rule '/auth/unconfirmed' (GET, HEAD, OPTIONS) -> auth.unconfirmed>", "<Rule '/auth/register' (GET, HEAD, OPTIONS, POST) -> auth.register>", "<Rule '/auth/confirm' (GET, HEAD, OPTIONS) -> auth.resend_confirmation>", "<Rule '/auth/logout' (GET, HEAD, OPTIONS) -> auth.logout>", "<Rule '/auth/login' (GET, HEAD, OPTIONS, POST) -> auth.login>", "<Rule '/auth/reset' (GET, HEAD, OPTIONS, POST) -> " 'auth.password_reset_request>', "<Rule '/empty-trash' (GET, HEAD, OPTIONS) -> main.empty_trash>", "<Rule '/notebooks' (GET, HEAD, OPTIONS, POST) -> main.notebooks>", "<Rule '/favorites' (GET, HEAD, OPTIONS) -> main.favorites>", "<Rule '/settings' (GET, HEAD, OPTIONS) -> main.settings>", "<Rule '/shutdown' (GET, HEAD, OPTIONS) -> main.server_shutdown>", "<Rule '/archive' (GET, HEAD, OPTIONS) -> main.view_archive>", "<Rule '/search' (GET, HEAD, OPTIONS) -> main.search>", "<Rule '/trash' (GET, HEAD, OPTIONS) -> main.trash>", "<Rule '/add' (GET, HEAD, OPTIONS, POST) -> main.add>", "<Rule '/' (GET, HEAD, OPTIONS, POST) -> main.index>", "<Rule '/static/bootstrap/<filename>' (GET, HEAD, OPTIONS) -> " 'bootstrap.static>', "<Rule '/auth/change-email/<token>' (GET, HEAD, OPTIONS) -> " 'auth.change_email>', "<Rule '/auth/confirm/<token>' (GET, HEAD, OPTIONS) -> auth.confirm>", "<Rule '/auth/reset/<token>' (GET, HEAD, OPTIONS, POST) -> " 'auth.password_reset>', "<Rule '/delete-forever/<id>' (GET, HEAD, OPTIONS, POST) -> " 'main.delete_forever>', "<Rule '/notebook/<id>' (GET, HEAD, OPTIONS) -> main.notebook>", "<Rule '/notebook/<id>' (DELETE, OPTIONS) -> main.delete_notebook>", "<Rule '/favorite/<id>' (GET, HEAD, OPTIONS, POST) -> main.favorite>", "<Rule '/restore/<id>' (GET, HEAD, OPTIONS, POST) -> main.restore>", "<Rule '/archive/<id>' (GET, HEAD, OPTIONS) -> main.archive>", "<Rule '/delete/<id>' (GET, HEAD, OPTIONS, POST) -> main.delete>", "<Rule '/static/<filename>' (GET, HEAD, OPTIONS) -> static>", "<Rule '/share/<id>' (GET, HEAD, OPTIONS, POST) -> main.share>", "<Rule '/note/<id>' (GET, HEAD, OPTIONS) -> main.note>", "<Rule '/edit/<id>' (PUT, OPTIONS) -> main.edit>", "<Rule '/tag/<name>' (GET, HEAD, OPTIONS) -> main.tag>"]
Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.
Check out some more stuff to read down below.
Most popular posts this month
- 2024
- Reinstalling Windows at 1am
- SQLite DB Migrations with PRAGMA user_version
- My Custom Miniflux CSS Theme
- How to Disable Wayland in Debian Testing
Recent Favorite Blog Posts
This is a collection of the last 8 posts that I bookmarked.
- Give Your Spouse the Gift of a Couple's Email Domain from mtlynch.io
- Skip the Next iPhone from Articles on Jose M.
- Have smart glasses finally hit an inflection point? from The Torment Nexus
- The McPhee method from the jsomers.net blog
- Pluralistic: LLMs are slot-machines (16 Aug 2025) from Pluralistic: Daily links from Cory Doctorow
- Pluralistic: Bluesky creates the world's weirdest, hardest-to-understand binding arbitration clause (15 Aug 2025) from Pluralistic: Daily links from Cory Doctorow
- Just a Little More Context Bro, I Promise, and It’ll Fix Everything from Jim Nielsen’s Blog
- The Futzing Fraction from Deciphering Glyph
Articles from blogs I follow around the net
Who Is The Sky? by David Byrne
Seeing David Byrne last night for the first-ever performance of Who Is The Sky was one of the best and most impactful concerts/experiences of my life.
via Blog – Brad Frost September 17, 2025Pluralistic: Conspiratorialism's causal chain (17 Sep 2025)
Today's links Conspiratorialism's causal chain: A four-part begat. Hey look at this: Delights to delectate. Object permanence: Legal threats over HDCP leaks; Print your own TSA luggage keys; "A Natural History of Empty Lots." Upcoming appe…
via Pluralistic: Daily links from Cory Doctorow September 17, 2025Theatre Review: Interview (Understudy Performance) ★★★☆☆
One of the best things about London theatre is that once in a while a show will give its understudies a chance to break out of the dressing room and soar on the stage. It's a chance to see talented performers at a discount price. What's not to lik…
via Terence Eden’s Blog September 17, 2025Generated by openring