Linux palvelimet ICT4TN021-3010 Harjoitus 6

Flask Automatic Forms


Tehtävän suorittaminen aloitettu 9.3.2020 klo. 14:00

Laitteen tiedot, jolla tehtävä suoritettiin:

  • CPU: Intel i5-4670k
  • GPU: Nvidia GTX 1060 6 Gt VRAM
  • RAM: 16 Gt DDR3
  • Kingston DataTraveler G4 16 Gt, jossa Xubuntu 18.04.03
a) Tietokanta wepissä. Tee oma yksinkertainen, tietokantaa käyttävä ohjelma. Ohjelmalla tulee olla jokin käyttötarkoitus. Voit tehdä ohjelman muokkaamalla Teron koodia (muista lähdeviite).
b) Laita tietokantaohjelmasi toimimaan mod_wsgi:n kanssa.
Production flask

Aloitin tehtävän suorittamisen asentamalla tuotantotyylisen asennuksen flaskista. Tein asennuksen seuraavilla komennoilla:

tommy.wsgi ja hello.py tiedostojen sisällöt olivat joko suoraan Tero Karvisen ohjeesta tai muokattu näissä ohjeissa olleista esimerkeistä (linkki). Päättelin onnistuneeni asennuksessa, sillä sain kirjoittamani lauseen näkymään localhost-osoitteessa.

Automatic forms

Aloitin tietokantaa käyttävän ohjelman luomisen luomalla templates-kansion public_wsgi kansion alle komennolla ”mkdir templates”. Tämän jälkeen loin myös ”base.html” ja ”replies.html” nimiset tiedostot templates-kansioon nano-komennolla.

Liitin luomiini .html-tiedostoihin esimerkki templatet Tero Karvisen Flask Automatic Forms -artikkelista (linkki) ja korvasin hello.py-tiedoston sisällön samassa artikkelissa olevan esimerkki python-tiedoston sisällöllä. Yrittäessäni ajaa python-tiedostoa tämän jälkeen sain virheviestin siitä, että minulla ei ollut asennettuna ”sqlalchemy” ja ”wtforms” -moduuleita asennettuna. Jotenka asensin seuraavaksi nämä komennoilla ”sudo apt-get install -y python3-flask-sqlalchemy” ja ”sudo apt-get install python3-flaskext.wtf”. Tämän jälkeen onnistuin ajamaan python-tiedoston onnistuneesti komennolla ”python3 hello.py” ja sain formin sisältävän sivun näkymään localhost osoitteessa.

(huom. olin kuvan ottohetkellä muokannut jo hieman hello.py, base.html ja replies.html -tiedostoja, jonka takia sivun otsikot eroavat hieman Tero Karvisen esimerkistä).

Poistin ensin autoformed.db -tietokannan, joka oli luotu testatessani templatejen toimimista. Tämän jälkeen poistin python-tiedostosta ”osallistumis” -kentän ja lisäsin ”address” -kentän.

Muokkasin molemmista html-templateista otsikko-osioita ja lisäsin replies.html -tiedostoon nimen lisäksi osoitetiedon, jolloin vastauksissa näkyi lähettäjän nimen lisäksi tämän osoite.

Tehtävä suoritettu 9.3.2020 klo. 17:30


Muokkaukset:

23.3.2020, Lisätty laitteen tiedot, jolla tehtävä on suoritettu. Muokattu tekstin ulkoasua siistimmäksi.

Lähteet

Karvinen, Tero 2020: Aikataulu, h6. http://terokarvinen.com/2020/aikataulu-linux-palvelimet-ict4tn021-3010-torstai-aamu-alkukevat-2020-5-op#h1, Luettu 9.3.2020

Karvinen, Tero 2020: Deploy Python Flask to Production. http://terokarvinen.com/2020/deploy-python-flask-to-production/, Luettu 9.3.2020

Karvinen, Tero 2020: Flask Automatic Forms. http://terokarvinen.com/2020/flask-automatic-forms/, Luettu 9.3.2020

Gratschew, Tommy 2.3.2020: Linux palvelimet ICT4TN021-3010 Harjoitus 5. https://tgratschew.news.blog/2020/03/02/linux-palvelimet-ict4tn021-3010-harjoitus-5/, Luettu 9.3.2020

One thought on “Linux palvelimet ICT4TN021-3010 Harjoitus 6

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create your website with WordPress.com
Get started
%d bloggers like this: