# .env für den Django SECRET_KEY anlegen
## 1. `.env` im Projektstamm erstellen
Lege im Stammverzeichnis deines Django-Projekts eine Datei namens `.env` an.
### Inhalt der `.env`
```
SECRET_KEY='dein_sehr_langer_geheimer_schluessel'
```
Falls dein Secret Key bereits versehentlich auf GitHub gelandet ist, generiere einen neuen, z. B. hier:
https://djecrety.ir/
Oder per Django selbst:
```bash
python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
```
## 2. `.env` in `.gitignore` eintragen
Damit die Datei nicht ins Repository gelangt:
`.gitignore`
```
.env
```
## 3. `python-dotenv` installieren
```bash
pip install python-dotenv
```
## 4. Secret Key in `settings.py` aus der `.env` laden
```python
import os
from dotenv import load_dotenv
load_dotenv() # Lädt Variablen aus .env
SECRET_KEY = os.getenv("SECRET_KEY")
```
Optional: Validierung
```python
if not SECRET_KEY:
raise ValueError("SECRET_KEY is not set in the environment variables.")
```
## 5. `.env.template` für das Repository anlegen
Erstelle im Stammverzeichnis eine Datei `.env.template`, die als Vorlage dient:
```
# Add your own Django SECRET_KEY here
SECRET_KEY = 't=r(8(lvw-vhj-vhqn_kt&s@)1zzt-3)t0*8$%9^pqtd=_$(p$'
```
Diese Datei darf ins Repository gepusht werden.
## 6. Neue `.env` aus der Vorlage erstellen (z. B. nach dem Klonen)
```bash
cp .env.template .env
```
Anschließend den eigenen Secret Key in der neuen `.env` ergänzen.