venv Aktivierung in Visual Studio Code (Windows, PowerShell)

Warum venv\Scripts\Activate.ps1 wichtig ist, was im Hintergrund passiert, und wie du sauber mit HTTPie und Django arbeitest – im VS Code Dark Stil.

Warum venv überhaupt?

Was macht Activate.ps1 im Hintergrund?

Workflow in Visual Studio Code

  1. Terminal öffnen: Ansicht → Terminal (oder Ctrl + ö).
  2. venv aktivieren: Im Projektordner:
    PowerShell
    .\venv\Scripts\Activate.ps1
  3. Pakete installieren:
    HTTPie im venv
    pip install httpie
  4. Django starten:
    Runserver
    python manage.py runserver
  5. API testen mit HTTPie:
    HTTPie GET
    http GET http://127.0.0.1:8000/api/movies/

Vergleich: aktiviert vs. nicht aktiviert

Welche Python-Exe wird verwendet?
where python

Erwartung: Mit aktivierter Umgebung zeigt der erste Treffer in venv\Scripts\python.exe, ohne Aktivierung zeigt er auf deine globale Installation.

Installierte Pakete prüfen
pip list

Erwartung: Aktivierte Umgebung: nur projektlokale Pakete. Ohne Aktivierung: globale Systempakete.

Typische Stolpersteine (Windows, PowerShell)

Execution Policy blockiert Skripte: Wenn „running scripts is disabled“ erscheint, nutze eine Prozess-lokale Ausnahme:

Nur für diese Session
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

Danach erneut: .\venv\Scripts\Activate.ps1.

VS Code Python-Interpreter wählen: Unten rechts auf den Interpreter klicken und den Pfad aus venv wählen, damit Linting/IntelliSense korrekt sind.

Schnellreferenz: HTTPie für CRUD

GET Liste
http GET http://127.0.0.1:8000/api/movies/
GET Detail
http GET http://127.0.0.1:8000/api/movies/1/
POST erstellen
http POST http://127.0.0.1:8000/api/movies/ title="Inception" year=2010 genre="Sci-Fi" rating=8.8
PATCH teilweise
http PATCH http://127.0.0.1:8000/api/movies/1/ rating=9.0
PUT komplett
http PUT http://127.0.0.1:8000/api/movies/1/ title="The Matrix Reloaded" year=2003 genre="Sci-Fi" rating=7.2
DELETE löschen
http DELETE http://127.0.0.1:8000/api/movies/1/