├── .github └── FUNDING.yml ├── 01 - Introduction └── market.py ├── 02 - Styling and Templates ├── market.py └── templates │ └── home.html ├── 03 - Sending Data to Templates ├── market.py └── templates │ ├── home.html │ └── market.html ├── 04 - Template Inheritance ├── market.py └── templates │ ├── base.html │ ├── home.html │ └── market.html ├── 05 - Models and Databases ├── market.db ├── market.py └── templates │ ├── base.html │ ├── home.html │ └── market.html ├── 06 - Project Restructure ├── market │ ├── __init__.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ └── market.html └── run.py ├── 07 - Model Relationships ├── market │ ├── __init__.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ └── market.html └── run.py ├── 08 - Flask Forms ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── market.html │ │ └── register.html └── run.py ├── 09 - Flask Validations ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── market.html │ │ └── register.html └── run.py ├── 10 - Flash Messages & Advanced Validations ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── market.html │ │ └── register.html └── run.py ├── 11 - User Authentication Part 1 ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── login.html │ │ ├── market.html │ │ └── register.html └── run.py ├── 12 - User Authentication Part 2 ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── login.html │ │ ├── market.html │ │ └── register.html └── run.py ├── 13 - Logout & Customizations ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── login.html │ │ ├── market.html │ │ └── register.html └── run.py ├── 14 - Item Purchasing Part 1 ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── includes │ │ └── items_modals.html │ │ ├── login.html │ │ ├── market.html │ │ └── register.html └── run.py ├── 15 - Item Purchasing Part 2 ├── market │ ├── __init__.py │ ├── forms.py │ ├── market.db │ ├── models.py │ ├── routes.py │ └── templates │ │ ├── base.html │ │ ├── home.html │ │ ├── includes │ │ └── items_modals.html │ │ ├── login.html │ │ ├── market.html │ │ └── register.html └── run.py └── 16 - Item Selling ├── market ├── __init__.py ├── forms.py ├── market.db ├── models.py ├── routes.py └── templates │ ├── base.html │ ├── home.html │ ├── includes │ ├── items_modals.html │ └── owned_items_modals.html │ ├── login.html │ ├── market.html │ └── register.html └── run.py /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [jimdevops19] 2 | patreon: jimshapedcoding 3 | custom: ["https://www.buymeacoffee.com/jimsc"] 4 | -------------------------------------------------------------------------------- /01 - Introduction/market.py: -------------------------------------------------------------------------------- 1 | from flask import Flask 2 | app = Flask(__name__) 3 | 4 | @app.route('/') 5 | def hello_world(): 6 | return '
ID | 45 |Name | 46 |Barcode | 47 |Price | 48 |Options | 49 |
---|---|---|---|---|
{{ item.id }} | 56 |{{ item.name }} | 57 |{{ item.barcode }} | 58 |{{ item.price }}$ | 59 |60 | 61 | 62 | | 63 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
Start purchasing products by clicking the link below
10 | Get Started 11 |ID | 12 |Name | 13 |Barcode | 14 |Price | 15 |Options | 16 |
---|---|---|---|---|
{{ item.id }} | 23 |{{ item.name }} | 24 |{{ item.barcode }} | 25 |{{ item.price }}$ | 26 |27 | 28 | 29 | | 30 |
Start purchasing products by clicking the link below
10 | Get Started 11 |Click on one of the items to start buying
11 |ID | 17 |Name | 18 |Barcode | 19 |Price | 20 |Options | 21 |
---|---|---|---|---|
{{ item.id }} | 29 |{{ item.name }} | 30 |{{ item.barcode }} | 31 |{{ item.price }}$ | 32 |33 | 34 | 35 | | 36 |
Click on sell item to put an item back on the Market
44 |Start purchasing products by clicking the link below
10 | Get Started 11 |Click on one of the items to start buying
11 |ID | 17 |Name | 18 |Barcode | 19 |Price | 20 |Options | 21 |
---|---|---|---|---|
{{ item.id }} | 29 |{{ item.name }} | 30 |{{ item.barcode }} | 31 |{{ item.price }}$ | 32 |33 | 34 | 35 | | 36 |
Click on sell item to put an item back on the Market
44 |Start purchasing products by clicking the link below
10 | Get Started 11 |Click on one of the items to start buying
11 |ID | 17 |Name | 18 |Barcode | 19 |Price | 20 |Options | 21 |
---|---|---|---|---|
{{ item.id }} | 29 |{{ item.name }} | 30 |{{ item.barcode }} | 31 |{{ item.price }}$ | 32 |33 | 34 | 35 | | 36 |
Click on sell item to put an item back on the Market
44 |57 | This item costs {{ owned_item.price }}$ 58 |
59 |