Skip to content

mikalegall/flask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python

Tero Karvisen opissa saadut etätehtävät MarkDownilla tallennettuna (Cheatsheet):
Kun on tarvetta samanaikaisuuden hallinnalle rinnakkaisilla säikeillä (thread) ei arkkitehtuurisissa valinnoissa välttämättä kannattane suosia siltä osin Pythonia. Pythonissa ei ole erikseen public / private / protected metodeja eikä myöskään ole mitään gettereitä ja settereitä vaan attribuuttia voi käyttää suoraan. Python on niin sanotusti tyypittämätön kieli vaikka siellä tyypit ovatkin tuettu (vaihtuvat lennosta).

Isokuva

Hibernate <--> Java <--> Thymeleaf
& Html + CSS + JavaScript
--> SPA: React (VueJS visualisoinneille) <--> Contentful (GatsbyJS & GraphQL)

  • AWS / Azure / Gcloud / Oracle cloud
  • Python analytiikkaan

SQLAlchemy <--> Python <--> Flask (Jinja2)
& Html + CSS + JavaScript
--> SPA: React (VueJS visualisoinneille) <--> Contentful (GatsbyJS & GraphQL)

  • AWS / Azure / Gcloud / Oracle cloud
  • Python analytiikkaan


Suositeltava ensimmäinen ohjelmoinnin opettelu pohjataidoiksi on

DB: Pythonille SQLAlchemy (ORM) <--> PostgreSQL

sudo apt install python3-flask-sqlalchemy

(jolla myös web-sivun lomakkeet
from wtforms.ext.sqlalchemy.orm import model_form
from flask_wtf import FlaskForm)

BE: Python (Object-oriented programming)

sudo apt update 

sudo apt upgrade

sudo apt install python3

#Valinnainen https://en.wikipedia.org/wiki/IPython (toimii Anacondan mukana tulevan Jupyter Notebookin tavoin "input" & "output")
#sudo apt install ipython3


FE: Pythonille Djangon "kilpailija" Flask (sisältää Jinja2 HTML-muottimoottorin) fronttiin

    sudo apt install python3-flask

Perusaloitusrunko
#Kerrotaan mistä kirjastosta (kirjastojen nimet pienellä alkukirjaimella) tuodaan haluttu luokka hyödynnettäväksi (luokkien nimet isolla alkukirjaimella)
from flask import Flask

#Flask-luokan konstruktori ottaa parametrikseen main-metodin
app = Flask(__name__)

#Endpoint
@app.route('/nettiosoite')

#Funktiot määritellään avainsanalla def ja lohko aloitetaan kaksoispisteellä
def controller():
    #Funktion sisältämän lohkon sisennys on syntaksissa pakollista
    return "Moikka moi!"

#Jos tiedostoa ajetaan suoraan komentoriviltä (eikä ole esim. importattu ipython3:seen) 
if __name__ == "__main__":
    #Käynnistä paikallinen kehityspalvelin
	app.run(debug=True, port=8888)
#Käynnistyttyään vastaanottaa kutsun endpointissa
http://127.0.0.1:8888/nettiosoite

Pilvipalveluja: Linode, Digital Ocean, Hetzner jne.

Deplpyment Pythonille mod_wsgi <--> Apache2

Domain: Namecheap, Gandi


Tehtävät

Pythonin perussyntaksi versiolla 1.0 on avattu juurta jaksaen suomenkielellä sijainnissa https://web.archive.org/web/20180517070419/http://www.cs.hut.fi/~ttsirkia/Python.pdf

Vaikka Pythonin web frameworkin Flaskin versio 2.0 on jo julkaistu kannattanee silti vielä jonkun aikaa toimia aiemmalla versiolla https://flask.palletsprojects.com/en/1.0.x/quickstart/

https://github.com/mikalegall/flask/blob/main/hello_html/index.html

https://github.com/mikalegall/flask/blob/main/hello_flask/hello.py

https://github.com/mikalegall/flask/blob/main/hello_python/hello.py



https://github.com/mikalegall/flask/tree/main/print_user_input

https://github.com/mikalegall/flask/tree/main/tuplamuotti

https://github.com/mikalegall/flask/tree/main/print_list_for_in

https://github.com/mikalegall/flask/tree/main/form_minimum



https://github.com/mikalegall/flask/tree/main/flash_multiple

https://github.com/mikalegall/flask/tree/main/form



https://github.com/mikalegall/flask/tree/main/wannabe_crm



https://github.com/mikalegall/flask/tree/main/book160



https://github.com/mikalegall/flask/tree/main/deployment



https://github.com/mikalegall/flask/tree/main/technical_analysis

http://172.104.241.117/

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages