Fix migration error
This commit is contained in:
91
create_fc_gifu_entries.py
Normal file
91
create_fc_gifu_entries.py
Normal file
@ -0,0 +1,91 @@
|
||||
#!/usr/bin/env python
|
||||
"""
|
||||
FC岐阜イベント用のエントリーデータ作成スクリプト
|
||||
既存のチームをFC岐阜イベントにエントリーして、ゼッケン番号表示を可能にする
|
||||
"""
|
||||
|
||||
import os
|
||||
import sys
|
||||
import django
|
||||
from datetime import datetime
|
||||
|
||||
if __name__ == '__main__':
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings')
|
||||
django.setup()
|
||||
|
||||
from rog.models import NewEvent2, Entry, Team, NewCategory, CustomUser
|
||||
|
||||
print("=== FC岐阜イベント用エントリーデータ作成 ===")
|
||||
|
||||
try:
|
||||
# FC岐阜イベントを取得
|
||||
fc_gifu_event = NewEvent2.objects.filter(event_name__icontains='FC岐阜').first()
|
||||
if not fc_gifu_event:
|
||||
print("❌ FC岐阜イベントが見つかりません")
|
||||
sys.exit(1)
|
||||
|
||||
print(f"✅ FC岐阜イベント確認: {fc_gifu_event.event_name} (ID: {fc_gifu_event.id})")
|
||||
|
||||
# カテゴリを取得または作成
|
||||
category, created = NewCategory.objects.get_or_create(
|
||||
category_name="一般",
|
||||
defaults={'category_number': 1}
|
||||
)
|
||||
if created:
|
||||
print(f"✅ カテゴリ作成: {category.category_name}")
|
||||
else:
|
||||
print(f"✅ 既存カテゴリ使用: {category.category_name}")
|
||||
|
||||
# 既存のチームを取得
|
||||
teams = Team.objects.all()[:10] # 最初の10チームを使用
|
||||
print(f"✅ 対象チーム数: {teams.count()}件")
|
||||
|
||||
# エントリーを作成
|
||||
created_entries = 0
|
||||
zekken_number = 1
|
||||
|
||||
for team in teams:
|
||||
# 既にエントリーが存在するかチェック
|
||||
existing_entry = Entry.objects.filter(
|
||||
team=team,
|
||||
event=fc_gifu_event
|
||||
).first()
|
||||
|
||||
if not existing_entry:
|
||||
# エントリーを作成
|
||||
entry = Entry.objects.create(
|
||||
team=team,
|
||||
event=fc_gifu_event,
|
||||
category=category,
|
||||
date=fc_gifu_event.start_datetime,
|
||||
owner=team.owner,
|
||||
zekken_number=zekken_number,
|
||||
zekken_label=f"FC岐阜-{zekken_number:03d}",
|
||||
is_active=True,
|
||||
hasParticipated=False,
|
||||
hasGoaled=False
|
||||
)
|
||||
print(f" ✅ エントリー作成: {team.team_name} -> ゼッケン{zekken_number}")
|
||||
created_entries += 1
|
||||
zekken_number += 1
|
||||
else:
|
||||
print(f" ⏭️ 既存エントリー: {team.team_name}")
|
||||
|
||||
print(f"\n=== 作成完了 ===")
|
||||
print(f"新規エントリー数: {created_entries}件")
|
||||
|
||||
# 確認
|
||||
fc_entries = Entry.objects.filter(event=fc_gifu_event)
|
||||
print(f"FC岐阜イベントの総エントリー数: {fc_entries.count()}件")
|
||||
|
||||
print("\n=== ゼッケン番号一覧 ===")
|
||||
for entry in fc_entries.order_by('zekken_number')[:5]:
|
||||
print(f"ゼッケン{entry.zekken_number}: {entry.team.team_name}")
|
||||
|
||||
if fc_entries.count() > 5:
|
||||
print(f"... 他 {fc_entries.count() - 5}件")
|
||||
|
||||
except Exception as e:
|
||||
print(f"❌ エラーが発生しました: {e}")
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
Reference in New Issue
Block a user