version 4.8.17 -- カレンダーで今日以降しか選べないようにした
This commit is contained in:
@ -179,15 +179,37 @@ class UserSerializer(serializers.ModelSerializer):
|
||||
|
||||
class GolaImageSerializer(serializers.ModelSerializer):
|
||||
goalimage = Base64ImageField(max_length=None, use_url=True)
|
||||
|
||||
class Meta:
|
||||
model = GoalImages
|
||||
fields="__all__"
|
||||
|
||||
def get_goalimage_url(self, car):
|
||||
def get_goalimage_url_old(self, car):
|
||||
request = self.context.get('request')
|
||||
photo_url = GoalImages.goalimage.url
|
||||
return request.build_absolute_uri(photo_url)
|
||||
|
||||
def get_goalimage_url(self, obj):
|
||||
request = self.context.get('request')
|
||||
if request is None:
|
||||
logger.warning("Request not found in serializer context")
|
||||
return None
|
||||
|
||||
try:
|
||||
photo_url = obj.goalimage.url
|
||||
absolute_url = request.build_absolute_uri(photo_url)
|
||||
logger.info(f"Generated URL for goalimage: {absolute_url}")
|
||||
return absolute_url
|
||||
except AttributeError as e:
|
||||
logger.error(f"Error generating URL for goalimage: {str(e)}")
|
||||
return None
|
||||
|
||||
def to_representation(self, instance):
|
||||
representation = super().to_representation(instance)
|
||||
representation['goalimage_url'] = self.get_goalimage_url(instance)
|
||||
logger.debug(f"Serialized data: {representation}")
|
||||
return representation
|
||||
|
||||
class CheckinImageSerializer(serializers.ModelSerializer):
|
||||
checkinimage = Base64ImageField(max_length=None, use_url=True)
|
||||
class Meta:
|
||||
@ -470,6 +492,10 @@ class EntrySerializer(serializers.ModelSerializer):
|
||||
owner = self.context['request'].user
|
||||
zekken_number = data.get('zekken_number')
|
||||
|
||||
logger.debug(f"Parsed data: team={team}, event={event}, category={category}, "
|
||||
f"entry_date={entry_date}, owner={owner}, zekken_number={zekken_number}")
|
||||
|
||||
|
||||
# Check if team, event, and category exist
|
||||
if not Team.objects.filter(id=team.id).exists():
|
||||
raise serializers.ValidationError("指定されたチームは存在しません。")
|
||||
@ -486,8 +512,8 @@ class EntrySerializer(serializers.ModelSerializer):
|
||||
if zekken_number is not None:
|
||||
if zekken_number <= 0:
|
||||
raise serializers.ValidationError("ゼッケン番号は正の整数である必要があります。")
|
||||
if Entry.objects.filter(event=event, zekken_number=zekken_number).exists():
|
||||
raise serializers.ValidationError("このゼッケン番号は既に使用されています。")
|
||||
# if Entry.objects.filter(event=event, zekken_number=zekken_number).exists():
|
||||
# raise serializers.ValidationError("このゼッケン番号は既に使用されています。")
|
||||
|
||||
return data
|
||||
|
||||
@ -824,3 +850,7 @@ class PasswordResetConfirmSerializer(serializers.Serializer):
|
||||
validate_password(data['new_password'])
|
||||
return data
|
||||
|
||||
class UserLastGoalTimeSerializer(serializers.Serializer):
|
||||
user_email = serializers.EmailField()
|
||||
last_goal_time = serializers.DateTimeField()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user