| 1234567891011121314151617181920212223242526272829303132333435363738 |
- from django.core.management.base import BaseCommand
- from django.contrib.auth.models import User
- from assetapp.models import Category
- class Command(BaseCommand):
- help = '初始化系统:创建管理员用户和默认分类'
- def handle(self, *args, **options):
- # 创建管理员
- if not User.objects.filter(username='admin').exists():
- User.objects.create_superuser('admin', 'admin@example.com', 'admin123')
- self.stdout.write(self.style.SUCCESS('✓ 管理员用户已创建 (admin/admin123)'))
- else:
- self.stdout.write(' 管理员用户已存在,跳过')
- # 创建默认分类
- default_categories = [
- ('服务器', '各类物理服务器、虚拟化主机'),
- ('交换机', '网络交换设备'),
- ('路由器', '网络路由设备'),
- ('存储设备', 'SAN/NAS等存储设备'),
- ('防火墙', '网络安全设备'),
- ('UPS', '不间断电源设备'),
- ('其他', '其他类型设备'),
- ]
- created_count = 0
- for name, desc in default_categories:
- cat, created = Category.objects.get_or_create(
- name=name,
- defaults={'description': desc}
- )
- if created:
- created_count += 1
- self.stdout.write(self.style.SUCCESS(f'✓ 分类初始化完成 (新增 {created_count} 个)'))
- self.stdout.write(self.style.SUCCESS('\n初始化完成!请使用 admin/admin123 登录'))
|