Profilbilder: Avatar-Upload, Anzeige auf Profil & Feed
- user.avatar-Spalte (Schema, migrate.sh, Migrationsdoku)
- POST /user/avatar (geschützt): Upload via storeImage, ersetzt/löscht altes Bild
- avatar in /u/{name}/info, /user/info und im entrySelect-Join (Feed-Karten)
- Account-Löschung entfernt auch das Avatar-File
- Frontend: Avatar im Profilkopf + Byline der Karten (50px), Upload-Form,
Platzhalterbild no_profile_pic.jpg als Fallback
- .card img per :not(.avatar) von Beitragsbildern getrennt
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -5,6 +5,24 @@ Eine frische DB (Schema aus `db.go`) braucht keine davon.
|
||||
|
||||
---
|
||||
|
||||
## `avatar`-Spalte in `user`
|
||||
|
||||
**Wann:** beim Deploy der Profilbild-Version gegen eine bestehende `kver.db`.
|
||||
|
||||
**Hintergrund:** Profilbilder werden als Pfad (`static/media/...`) in der neuen Spalte
|
||||
`user.avatar` gespeichert (leerer String = kein Bild, Frontend zeigt dann das
|
||||
Platzhalterbild). `CREATE TABLE IF NOT EXISTS` ergänzt die Spalte bei einer
|
||||
vorhandenen Tabelle nicht.
|
||||
|
||||
**Migration:**
|
||||
```sql
|
||||
ALTER TABLE user ADD COLUMN avatar TEXT NOT NULL DEFAULT '';
|
||||
```
|
||||
|
||||
Bestehende Nutzer haben damit kein Bild (`''`). Nur einmalig ausführen.
|
||||
|
||||
---
|
||||
|
||||
## `filepath` NULL → leerer String
|
||||
|
||||
**Wann:** beim Umstieg auf die Go-Version, falls `entry.filepath` NULL-Werte enthält.
|
||||
|
||||
Reference in New Issue
Block a user