Hey, thank you so much for this tutorial series, it's very well thought and easy to understand for beginners like me. Currently trying to develop my first web app, that's exactly what I needed.
In 12:49 you run `flask db init`. It works but is a bit confusing (unless it's explained further in the video). How does Flask know where to look for a `db` to initiate? I think it only works because we defined our app inside `app.py` which is sort of a convention so this is a default place for an app to be in. So Flask checks `app.py` by default - finds the `db` in it and all is good. But if you change the name to anything, e.g. `my_app.py` - then the `flask db init` throws an error ("Error: Could not locate a Flask application.") So first you need to tell Flask where your actual `app` and `db` is by setting `FLASK_APP` variable or calling `flask --app my_app:app` where: - `my_app` is the name of the file you're app is in (so `my_app.py`) - `app` is the name of the variable the Flask app was assigned to inside that file (in the tutorial we actually use `flask_app` inside `run.py`)
Thanks for the tutorial, it helped me understand flask-sqlalchmey! I am trying to understand at 15:10 you mentioned that it loops from the other python files. Is it necessary to loop it like that? I also looked at the quick start instructions for flask-sqlalchemy and it looks like you can do it all in app.py. When you write flask run in the terminal it looks for app.py to run that so is it best practice to keep everything in app.py or split it out like how you did it?
27:56 was not htmx will be the best choice to do this crud operations instead of writing these long JS? if possible, please make one separate video and all futher operation with HTMX.
my problem is with the db.Model classes is that the __init__ does not do anything when creating a object from those classes.. So i have to make classes that inherit from Base. But then they dont get created as far as i can tell.. As im writing this, im wodnering if should create a db.Model table then another class that inherins from that class that inherited from db.Model..
@@dishuu2714 1. Make a clean vevn 2. install flask, flask-sqlalchemy, flask-migrate 3. run the flask db commands (it should work now) 4. make sure you have sqlite3 installed 5. pay attention to pycharm advices to install sqlite3 related content if it's the first time you are using sqlite3 6. Add a new sqlite3 data source clicking the plus icon in the database window that you can access in at the right of your screen inside pycharm 7. Set the sample database 'testdb.db' in the file field browsing your directories 8. Test Connection That worked for me.
after sending a post request, if i reload the page, i get the form resubmission alert and if i continue it takes the data that i last filled the form with even though it's not in the input field. how do i prevent this?
Great episode. I too will need to redo this with an existing MySQL db.
Hey, thank you so much for this tutorial series, it's very well thought and easy to understand for beginners like me. Currently trying to develop my first web app, that's exactly what I needed.
Relly good! I changed the detail and delete to a single view to make it less code, I think it looks better that way. All the code is in my github repo
Thank You. I just need to get it to work with my MySQL database now!
Got it working with MySQL. Just had to change SQLALCHEMY_DATABASE_URI prefix to 'mysql+mysqlconnector://'. I also installed mysql-connector-python
In 12:49 you run `flask db init`.
It works but is a bit confusing (unless it's explained further in the video).
How does Flask know where to look for a `db` to initiate?
I think it only works because we defined our app inside `app.py` which is sort of a convention so this is a default place for an app to be in.
So Flask checks `app.py` by default - finds the `db` in it and all is good.
But if you change the name to anything, e.g. `my_app.py` - then the `flask db init` throws an error ("Error: Could not locate a Flask application.")
So first you need to tell Flask where your actual `app` and `db` is by setting `FLASK_APP` variable or calling `flask --app my_app:app` where:
- `my_app` is the name of the file you're app is in (so `my_app.py`)
- `app` is the name of the variable the Flask app was assigned to inside that file (in the tutorial we actually use `flask_app` inside `run.py`)
I love this series!
Thanks for the tutorial, it helped me understand flask-sqlalchmey! I am trying to understand at 15:10 you mentioned that it loops from the other python files. Is it necessary to loop it like that? I also looked at the quick start instructions for flask-sqlalchemy and it looks like you can do it all in app.py. When you write flask run in the terminal it looks for app.py to run that so is it best practice to keep everything in app.py or split it out like how you did it?
Hi, I think it's a better practice to split
Keep these tutorials coming brother!
Awesome , could you show how we could use a DB like Redis with SQLite & SQLAlchemy
Great series!
Nice tutorial.
top! thank you bro!
27:56 was not htmx will be the best choice to do this crud operations instead of writing these long JS?
if possible, please make one separate video and all futher operation with HTMX.
good see u again
my problem is with the db.Model classes is that the __init__ does not do anything when creating a object from those classes..
So i have to make classes that inherit from Base. But then they dont get created as far as i can tell..
As im writing this, im wodnering if should create a db.Model table then another class that inherins from that class that inherited from db.Model..
My problem is when migrating SQL when I run the command: flask db init it say 'Could not import 'db'. How to fix it?
same
@@dishuu2714 1. Make a clean vevn
2. install flask, flask-sqlalchemy, flask-migrate
3. run the flask db commands (it should work now)
4. make sure you have sqlite3 installed
5. pay attention to pycharm advices to install sqlite3 related content if it's the first time you are using sqlite3
6. Add a new sqlite3 data source clicking the plus icon in the database window that you can access in at the right of your screen inside pycharm
7. Set the sample database 'testdb.db' in the file field browsing your directories
8. Test Connection
That worked for me.
after sending a post request, if i reload the page, i get the form resubmission alert and if i continue it takes the data that i last filled the form with even though it's not in the input field. how do i prevent this?
dont know why but when I try to migrate it doesn't add any table, I ended up creating it in SQL
I have same issue.
which OS and which IDE ????
Popos with pycharm professional edition
15:40