1. Hem
  2. Utvecklarverktyg
  3. Hur kommer jag igång med Flask för Python?

Hur kommer jag igång med Flask för Python?

Flask är ett ramverk för utveckling av webbaserade applikationer och hemsidor i Python. Flask beskriver sig själva som ett microframework men passar även för att utveckla större system och hemsidor. Flask lämpar sig extra bra för att utveckla API:er då det är väldigt avskalat och snabbt att komma igång med i sitt grundutförande.

Oderland stödjer körning av Python-applikationer på alla webbhotellspaket och därför går även Flask att köra på vårt webbhotell.

Denna guide utgår från att vi börjar med ett tomt webbhotellskonto och att vi väljer att köra Flask direkt på vår domän. Om du redan har filer på ditt webbhotellkonto eller redan kör andra hemsidor på det behöver detta tas i beaktning om du följer guiden. Vissa anpassningar behöver då göras.

För sätta upp ett nytt Flask-projekt hos Oderland börja med att skapa en ny Python-applikation i cPanel enligt instruktionerna i följande guide.

För att underlätta felsökning och uppsättning rekommenderar vi att aktivera felsökningsläge för applikationen. Instruktioner för detta återfinns i Hur felsöker jag fel i min Node.js, Python eller Ruby applikation?

I denna guide används Python 2.7, samma förfarande går att använda för att köra Flask med Python 3.x.

Gör följande val i uppsättningen:

  • Python version till Python 2.7 (Flask fungerar även bra i Python 3.3+ så det går även bra att välja någon sådan version).
  • App Directory sätter vi till flasktest (~/flasktest blir således vår katalog för vår Flask-applikation)
  • App Domain/URI sätter vi till / för att köra direkt på domänen.

Tryck sedan på Setup.

När uppsättningen är klar skall vi börja med att installera Flask som en Python-modul. Under raden som heter modules klicka på show.

Skriv sedan in Flask och klicka på Flask i dropdown-listan.

Får du ett val om version välj då den senaste stabila version. Klicka på Add och därefter på knappen Update längst ner på sidan.

Detta installerar då Flask på servern (i ett separat virtualenv) samt startar om applikationen. När allt är klart bör du se aktuell version av Flask under modules.

Om du besöker din domän och den URL du valde bör du mötas av något i stil med

It works!
Python 2.7.11

Flask är alltså ännu inte aktiverat. Detta beror på att det ännu inte finns något Flask-projekt på servern.

För att starta ett minimalt Flask-projekt behöver vi först SSH:a in till din server, se denna guide för mer information om detta. Det går även bra att göra samma sak genom FTP eller filhanteraren men vi kommer här att göra det direkt genom SSH.

Vi börjar med att gå in i vår katalog för vårt Flask-projekt och skapar sedan en ny katalog i denna som vi här döper till app. i Denna katalog placerar skapar vi två filer. En vid namn __init__.py som lämnas tom samt en app.py där vi placerar vår applikationskod.

cd ~/flasktest
mkdir app
cd app
touch __init__.py
touch app.py

Öppna sedan filen app.py och placera följande kod i den. Detta är Flasks egna exempel för att skriva ut Hello World! när anrop mot / görs mot applikationen.

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()

Nu har vi en minimal Flask-applikation skapad som skall skriva ut Hello World.

Vi behöver nu göra inställningarna i cPanel så att Flask svarar på anrop till domänen. Gå till Setup Python App i cPanel och sedan klickar du på edit-länken vid WSGI file location för din applikation.

Vi behöver nu göra inställningarna i cPanel så att Flask svarar på anrop till domänen. Gå till Setup Python App i cPanel och sedan klickar du på edit-länken vid WSGI file location för din applikation. Vi behöver här fylla i sökväg och applikationsnamn till vår app.py som skapades tidigare. För vår test-applikation fyller vi i följande. Sökvägen här är relativ till den katalog du valde som App directory (~/flasktest/).

app/app.py:app

Klicka sedan på Save-länken vid WSGI file location och sedan på Update längst ner under din applikation.

Går vi in på vår domän möts vi nu av en sida som skriver ut Hello World, Flask tar alltså emot anropen och svarar med det vi lagt in i app.py

Hello World!

För vidare läsning om Flask rekommenderas deras dokumentation.

Tips

  • pip finns installerat på servern. Det går därför bra att köra pip install MODUL för att installera ytterligare Python-moduler. Detta behöver göras efter att du aktiverat det virtualenv som skapas när du sätter upp en ny applikation.

Hjälpte den här guiden dig?

Relaterade guider

Behöver du mer hjälp?
Kan du inte hitta lösningen på ditt problem? Då kan du kontakta oss via e-post, chatt och telefon!
KONTAKTA OSS