zetarmany commited on
Commit
ef6a641
·
verified ·
1 Parent(s): 49986a4

Create init_db.py

Browse files
Files changed (1) hide show
  1. init_db.py +56 -0
init_db.py ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # init_db.py
2
+ import os
3
+ from app import app, db, User
4
+
5
+ def init_database():
6
+ with app.app_context():
7
+ db.create_all()
8
+ print("✅ Database tables created!")
9
+
10
+ # DAFTAR LENGKAP 11 ADMIN
11
+ admins = [
12
+ {'username': 'Hilbraaaam', 'password': 'Ketua Angkatan 24-26'},
13
+ {'username': 'Hudzaifahh', 'password': 'Wakil ketua Angkatan 24-26'},
14
+ {'username': 'Rafasyahh', 'password': 'Humas Kesayangan'},
15
+ {'username': 'Elazzam', 'password': 'Eos 800 D'},
16
+ {'username': 'Azzam Diq', 'password': 'Shidiq'},
17
+ {'username': 'Dzikrii', 'password': 'Bayar woe'},
18
+ {'username': 'Ibrahim', 'password': 'Mboh'},
19
+ {'username': 'Yusupp', 'password': 'Bangun'},
20
+ {'username': 'Azzam JR', 'password': 'Saturn'},
21
+ {'username': 'MK Azzam', 'password': 'Aneka Gold'},
22
+ {'username': 'Sami abd', 'password': 'TamTam'}
23
+ ]
24
+
25
+ # CEK ADMIN YANG SUDAH ADA
26
+ existing_admins = {admin.username for admin in User.query.filter_by(is_admin=True).all()}
27
+ print(f"📊 Admin yang sudah ada: {len(existing_admins)}")
28
+
29
+ # TAMBAHKAN ADMIN YANG BELUM ADA
30
+ new_admin_count = 0
31
+ for admin_data in admins:
32
+ if admin_data['username'] not in existing_admins:
33
+ admin = User(
34
+ username=admin_data['username'],
35
+ is_admin=True
36
+ )
37
+ admin.set_password(admin_data['password'])
38
+ db.session.add(admin)
39
+ new_admin_count += 1
40
+ print(f" ✓ Admin baru: {admin_data['username']}")
41
+
42
+ if new_admin_count > 0:
43
+ db.session.commit()
44
+ print(f"✅ Berhasil menambahkan {new_admin_count} admin baru")
45
+ else:
46
+ print("⚠️ Tidak ada admin baru yang ditambahkan")
47
+
48
+ # TAMPILKAN STATISTIK FINAL
49
+ total_admins = User.query.filter_by(is_admin=True).count()
50
+ total_users = User.query.count()
51
+ print(f"\n📊 Final stats:")
52
+ print(f" ✅ Total admin: {total_admins}")
53
+ print(f" ✅ Total user: {total_users}")
54
+
55
+ if __name__ == "__main__":
56
+ init_database()