@1cannon3

2:03 - importing wtforms
2:15 - HTML forms vs Python for forms
2:34 - Registration form
2:39 - Creating first RegistrationForm (This inherits from FlaskForm)
2:48 - Having different form fields
2:55 - Adding a username field
3:00 - A username is a "StringField" (From wtforms)
3:40 - Including limitations for usernames (or other fields)
4:08 - Validators
4:19 - Validators are arguments you pass into your fields
4:25 - Passing a list of validators
4:36 - "DataRequired" validator
4:41 - "wtforms.validators"
5:03 - "Length" validator
5:51 - "Email" validator
6:33 - "Password" field
7:16 - Password confirmation
7:27 - "EqualTo" validator for password confirmation
8:00 - "EqualTo" arguments are the field you want this to be field to be equal to
8:12 - Submit button
8:20 - "Submit" field
8:50 - Creating a login form
9:35 - Adding a "remember" field, cookie, so browser remembers users
10:20 - Setting a secret key for your application
12:15 - Creating routes for registration and login forms
12:22 - Registration route
14:08 - Creating templates for registration & login form

@SaidKerimov

Man, your videos are better than paid online courses. would be happy if you could prepare data science tutorials...

@acidspark

Around 48:00 when he is talking about using the multi-select functionality he never tells you how to do this.  For those that didn't know it existed you select the first instance of the word you want to replace (double click the word to select it quickly) then use the key combination CTRL-D which will select the closest next instance of the same word you have selected.  Keep hitting CTRL-D until you have all the ones you want to replace selected.  Then you can just type in your change and all selected words will get what you type in.

@girloffthecob

IF YOU HAVE A PROBLEM RUNNING IT AT 22:18 LIKE I DID, READ THIS!
I kept getting the message "Exception: Install 'email_validator' for email validation support." To fix this, just run "pip install email-validator" in your terminal. That should fix it.

@Hosseinsarpanah

36:04 If you're using PyCharm, Select all occurrences like:  
1) Set multiple cursors in the editor area: Alt + Mouse Click (Option + Mouse Click for Mac OS X). ...


2) Select/unselect the next occurrence: Alt + J/Shift + Alt +J (Ctrl + G / Shift + Ctrl +G for Mac OS X)


3) Select all occurrences: Shift + Ctrl + Alt + J (Ctrl + Cmd + G for Mac OS X)

@BitRunner85

If you don't see the validation in the browser (for example if you don't see the "This field is required." message) then:

1. Make sure you included "novalidate" attribute on line 4 from register.html so should be         <form method="POST" action="" novalidate>
2. Make sure you typed "for error" and not "for errors" as I did. Took me 20 minutes to realize but now the form validation works correctly.

@upendraroul343

I'm learning data science and found your post in Youtube for basic Python.. now I'm going through all of them... it's like watching a new English TV series.. don't have control to stop watching the next one.. All the best..

@lardosian

Love your accent, sounds like a soft southern accent.  Your content is fantastic.

@The_Bri_Cli

Flask has changed so much since Corey released this 3 years ago. An update would be stellar!

@jdratlif

Fantastic tutorial. Had been reading articles all day, but nothing clicked until I found this series.

@Frohuz

When started this tutorial my first thought was 'Wow, this guy is talking so fast, I won't be able to make it' but now I feel I understood everything you said and it all makes sense.
Thank you

@enduringpromise

I love how you are showing how to include bootstrap classes into the form. I also like how you showed how to customize the errors. Looking forward to completing this flask series.

@urbaneplanner

another good video - btw following along, I relaized at around 20:00 that you do need to pip install email_validator - I may have missed that instruction in the earlier part of the video

@acousticintros8407

Im learning in my own pace, and take note I am only at my 3rd day and I was able to deploy to a web server. your tutorials are very good than the ones i purchased from Udemy.

@rishavtiwari2017

He explained everything in this course so well, so nicely & clearly. Really worth giving time to this playlist and learning so many stuffs in a simple procedure

@tedbastwock3810

How many websites exist because of this channel? Gazillions. I'm so mad at youtube for not suggesting this channel to me sooner. Bad yt, bad. Corey presents everything I need in a clear, organized, easy to follow and understand format. Thank you Corey 🙏

@husseinsaad7969

Clear voice, easy explanation, and great content ... keep going, man!

@treaper

Man, that little trick you did where you added extra cursors to every instance of "dir" that should've been "div" and edited them all at once...so elegant. Love the videos!

@manulorenzo8956

Great Video.
I would like to add a little snippet that allows you to close the Flash Message.




 <div class="alert-dismissible fade show alert alert-{{ category }}" role="alert">
                  {{ message }}
                  <button type="button" class="close" data-dismiss="alert" aria-label="Close">
                      <span aria-hidden="true">&times;</span>
                    </button>
                </div>


This snippet fits in the layout page

@iansjackson

I have been up hill and down dale searching resources to get me started with Python/Flask/Web. I just want to say thank you, because what you are presenting here is the best I have found.