File size: 2,319 Bytes
7cfffb5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!/usr/bin/env python
"""
Script để tạo superuser cho Django Admin
Chạy từ thư mục backend/hue_portal
"""
import os
import sys
import django

# Thêm thư mục hue_portal vào path
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
HUE_PORTAL_DIR = os.path.join(BASE_DIR, 'hue_portal')
sys.path.insert(0, HUE_PORTAL_DIR)

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'hue_portal.settings')
django.setup()

from django.contrib.auth.models import User

def create_superuser(username='admin', email='admin@example.com', password='admin123'):
    """Tạo superuser nếu chưa có"""
    if User.objects.filter(username=username).exists():
        user = User.objects.get(username=username)
        if user.is_superuser:
            print(f"✅ Superuser '{username}' đã tồn tại.")
            print(f"   Username: {username}")
            print(f"   Email: {user.email}")
            print(f"\n🌐 Truy cập Django Admin tại: http://localhost:8000/admin/")
            return True
        else:
            # Nâng cấp user thành superuser
            user.is_superuser = True
            user.is_staff = True
            user.set_password(password)
            user.save()
            print(f"✅ Đã nâng cấp user '{username}' thành superuser.")
    else:
        User.objects.create_superuser(username=username, email=email, password=password)
        print(f"✅ Đã tạo superuser mới:")
    
    print(f"   Username: {username}")
    print(f"   Email: {email}")
    print(f"   Password: {password}")
    print(f"\n🌐 Truy cập Django Admin tại: http://localhost:8000/admin/")
    print(f"\n💡 Để start server: cd backend/hue_portal && POSTGRES_PORT=5433 POSTGRES_HOST=localhost python manage.py runserver")
    return True

if __name__ == '__main__':
    import argparse
    parser = argparse.ArgumentParser(description='Tạo superuser cho Django Admin')
    parser.add_argument('--username', default='admin', help='Username (default: admin)')
    parser.add_argument('--email', default='admin@example.com', help='Email (default: admin@example.com)')
    parser.add_argument('--password', default='admin123', help='Password (default: admin123)')
    args = parser.parse_args()
    
    create_superuser(args.username, args.email, args.password)