Fix class name 9g

This commit is contained in:
2025-01-23 16:06:44 +09:00
parent 2fff19a666
commit 8123f04ccc
2 changed files with 34 additions and 10 deletions

View File

@ -240,25 +240,46 @@ class EntryCSVProcessor:
event = NewEvent2.objects.get(event_name=row['event_code'])
print(f'イベント取得:{event.event_name}')
# start_datetimeの検証を追加
if not event.start_datetime:
raise ValidationError(f"Event {event.event_name} has no start date")
# イベントの日時設定を確認・修正
if not event.start_datetime or not event.end_datetime:
print(f"Event dates: start={event.start_datetime}, end={event.end_datetime}")
event.start_datetime = timezone.make_aware(datetime(2025, 1, 25, 9, 0))
event.end_datetime = timezone.make_aware(datetime(2025, 1, 25, 17, 0))
event.save()
# entry_dateをdatetimeに変換
if 'entry_date' in row:
# entry_dateの処理を改善
entry_date = None
if 'entry_date' in row and row['entry_date']:
try:
entry_date = datetime.strptime(row['entry_date'], '%Y/%m/%d %H:%M')
except ValueError:
entry_date = datetime.strptime(row['entry_date'], '%Y/%m/%d')
# 様々な日付形式に対応
date_formats = [
'%Y/%m/%d %H:%M',
'%Y/%m/%d',
'%Y-%m-%d %H:%M',
'%Y-%m-%d'
]
for date_format in date_formats:
try:
entry_date = datetime.strptime(row['entry_date'], date_format)
break
except ValueError:
continue
if entry_date is None:
raise ValueError(f"Could not parse date: {row['entry_date']}")
# タイムゾーン対応
entry_date = timezone.make_aware(entry_date)
except Exception as e:
print(f"Date parsing error: {str(e)}")
entry_date = event.start_datetime
else:
entry_date = event.start_datetime
if entry_date is None:
raise ValueError("Could not determine entry date")
print(f'エントリー日付:{entry_date}')
entry = Entry.objects.create(
@ -274,8 +295,11 @@ class EntryCSVProcessor:
entry.save()
print(f'エントリー作成完了:{team.team_name} - {event.event_name}')
except NewEvent2.DoesNotExist:
print(f'Error on _create_entry: {row}')
raise ValidationError(f"Event with code {row['event_code']} does not exist")
except Exception as e:
print(f'Error creating entry: {str(e)}')
raise ValidationError(f"Failed to create entry: {str(e)}")