147 lines
5.0 KiB
Markdown
147 lines
5.0 KiB
Markdown
# Admin Panel - Yedek Yönetimi Özellikleri ✅
|
||
|
||
## 🎉 Yeni Özellikler
|
||
|
||
Admin panele **"Yeni Yedek Al"** ve **"Yedek Yükle"** butonları eklendi!
|
||
|
||
### 📍 Nerede?
|
||
`/admin/backup/databasebackup/` sayfasında, üst kısımda sağ tarafta.
|
||
|
||
### 🔄 Yeni Yedek Al - Nasıl Çalışır?
|
||
|
||
1. **Admin panele gidin:** http://localhost:8000/admin/backup/databasebackup/
|
||
2. **"Yeni Yedek Al"** butonuna tıklayın (yeşil, 🔄 emoji ile)
|
||
3. Otomatik olarak:
|
||
- Yeni bir yedek kaydı oluşturulur
|
||
- Veritabanı yedeği alınır
|
||
- SQL dosyası `backups/` klasörüne kaydedilir
|
||
4. Başarı/hata mesajı gösterilir
|
||
5. Liste sayfasına yönlendirilirsiniz
|
||
|
||
### 📤 Yedek Yükle - Nasıl Çalışır? (YENİ!)
|
||
|
||
1. **Admin panele gidin:** http://localhost:8000/admin/backup/databasebackup/
|
||
2. **"Yedek Yükle"** butonuna tıklayın (mavi, 📤 emoji ile)
|
||
3. Yükleme formunda:
|
||
- **Yedek Adı** girin (opsiyonel - boş bırakılırsa dosya adı kullanılır)
|
||
- **SQL dosyasını** seçin (sadece .sql uzantılı)
|
||
- **Yükle** butonuna tıklayın
|
||
4. Dosya otomatik olarak:
|
||
- `backups/` klasörüne kaydedilir
|
||
- Timestamp ile adlandırılır: `uploaded_dosyaadi_20251224_183045.sql`
|
||
- Veritabanı kaydı oluşturulur
|
||
- Durum otomatik olarak "Tamamlandı" olarak ayarlanır
|
||
|
||
**⚠️ Önemli Notlar:**
|
||
- Maksimum dosya boyutu: **500 MB**
|
||
- Sadece **.sql** uzantılı dosyalar kabul edilir
|
||
- Dosya boyutu otomatik hesaplanır
|
||
- Yüklenen dosyalar geri yüklenebilir ve indirilebilir
|
||
|
||
### 💡 Alternatif Yöntem (Eski)
|
||
Hiçbir yedek seçmeden "Actions" dropdown → "Yeni Yedek Oluştur" → "Go"
|
||
|
||
## 📋 Tüm Özellikler Özeti
|
||
|
||
### ✨ Yeni Eklenenler
|
||
- ✅ **"Yeni Yedek Al" Butonu** - Liste sayfasında üstte görünür yeşil buton
|
||
- ✅ **"Yedek Yükle" Butonu** - Liste sayfasında üstte görünür mavi buton (YENİ!)
|
||
- ✅ **Özel URL'ler:**
|
||
- `/admin/backup/databasebackup/create-backup/` (yedek oluşturma)
|
||
- `/admin/backup/databasebackup/upload-backup/` (yedek yükleme)
|
||
- ✅ **Custom Template:** Butonlar otomatik olarak gösterilir
|
||
- ✅ **Upload Form:** Kullanıcı dostu yükleme formu
|
||
|
||
### 📥 İndirme (Önceden Eklendi)
|
||
- ✅ Liste görünümünde her yedeğin yanında "📥 İndir" butonu
|
||
- ✅ Admin action: "Seçili Yedeği İndir"
|
||
- ✅ Direkt URL: `/admin/backup/databasebackup/{id}/download/`
|
||
|
||
### 🗑️ Silme (Önceden İyileştirildi)
|
||
- ✅ Admin kaydı silindiğinde fiziksel dosya da otomatik silinir (post_delete signal)
|
||
- ✅ Action: "Yedek Dosyalarını Sil" (sadece dosyayı siler, kaydı korur)
|
||
|
||
### 🔄 Geri Yükleme (Mevcut)
|
||
- ✅ Admin action: "Seçili Yedeği Geri Yükle"
|
||
|
||
## 🛠️ Yapılan Değişiklikler
|
||
|
||
### 1. `/backup/admin.py`
|
||
- ✅ `create_backup_view()` metodu eklendi
|
||
- ✅ `upload_backup_view()` metodu eklendi (YENİ!)
|
||
- ✅ `get_urls()` metoduna özel URL'ler eklendi
|
||
- ✅ `changelist_view()` metodu eklendi (template context için)
|
||
|
||
### 2. `/backup/templates/admin/backup/databasebackup/change_list.html`
|
||
- ✅ Admin template oluşturuldu
|
||
- ✅ Üst kısma "Yeni Yedek Al" butonu eklendi
|
||
- ✅ Üst kısma "Yedek Yükle" butonu eklendi (YENİ!)
|
||
|
||
### 3. `/backup/templates/admin/backup/upload_backup.html` (YENİ!)
|
||
- ✅ YENİ: Yedek yükleme formu template'i oluşturuldu
|
||
- ✅ Dosya seçici ve form validasyonu
|
||
- ✅ Kullanıcı dostu arayüz ve bilgilendirmeler
|
||
|
||
### 4. `/backup/apps.py`
|
||
- ✅ Sinyaller için `ready()` metodu (önceden eklenmişti)
|
||
|
||
## 🚀 Kullanım
|
||
|
||
```bash
|
||
# Sunucuyu başlatın
|
||
python manage.py runserver
|
||
|
||
# Admin panele gidin
|
||
http://localhost:8000/admin/backup/databasebackup/
|
||
|
||
# "Yeni Yedek Al" butonuna tıklayın!
|
||
```
|
||
|
||
## 📸 Görünüm
|
||
|
||
Liste sayfasında şu sırayla butonlar görünür:
|
||
```
|
||
[➕ Add Database backup] [🔄 Yeni Yedek Al] [📤 Yedek Yükle]
|
||
```
|
||
|
||
### Yükleme Formu
|
||
Mavi "Yedek Yükle" butonuna tıkladığınızda şunları göreceksiniz:
|
||
- 📝 **Yedek Adı** alanı (opsiyonel)
|
||
- 📁 **Dosya Seçici** (.sql dosyaları için)
|
||
- ℹ️ **Bilgilendirme kutusu** (max boyut, format vb.)
|
||
- 📤 **Yükle** ve ❌ **İptal** butonları
|
||
|
||
## ⚡ Hızlı Test
|
||
|
||
### Test 1: Yeni Yedek Oluşturma
|
||
1. Admin panele giriş yapın
|
||
2. Database backups sayfasına gidin
|
||
3. Yeşil "🔄 Yeni Yedek Al" butonunu görün
|
||
4. Butona tıklayın
|
||
5. Başarı mesajını bekleyin
|
||
6. Yeni yedeği listede görün
|
||
7. Yedeğin yanındaki "📥 İndir" butonuyla indirin
|
||
|
||
### Test 2: Yedek Yükleme (YENİ!)
|
||
1. Admin panele giriş yapın
|
||
2. Database backups sayfasına gidin
|
||
3. Mavi "📤 Yedek Yükle" butonunu görün
|
||
4. Butona tıklayın
|
||
5. Yükleme formunda:
|
||
- Yedek adı girin (örn: "Production Backup 2024")
|
||
- Bilgisayarınızdan bir .sql dosyası seçin
|
||
- "Yükle" butonuna tıklayın
|
||
6. Başarı mesajını bekleyin
|
||
7. Yüklenen yedeği listede görün
|
||
8. Yedeği indirip veya geri yükleyebilirsiniz
|
||
|
||
## 📝 Notlar
|
||
|
||
- Buton sadece staff/admin kullanıcılarına görünür
|
||
- Her tıklamada yeni bir yedek oluşturulur
|
||
- Yedekler otomatik olarak adlandırılır: `Manuel Yedek - 2025-12-24 18:30:00`
|
||
- SQL dosyası: `backup_server_dj_20251224_183000.sql`
|
||
|
||
Daha detaylı bilgi için: `BACKUP_SYSTEM_GUIDE.md`
|
||
|