Remove the guest system entirely: no is_guest/device_id, no guest throttles, phone login is the only way in
accounts.0008 drops the columns and refuses to run while guest rows exist. Docs describe the current state; tests that only proved guest behaviour are gone. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -66,9 +66,6 @@ class OTPCodeField(serializers.CharField):
|
||||
class LoginRequestSerializer(serializers.Serializer):
|
||||
phone = IranMobileField()
|
||||
otp = OTPCodeField()
|
||||
# فرانتِ فعلی نمیفرستد؛ اگر بیاید روی Session.device_id مینشیند. null یا بیش از ۶۴ نویسه ۴۰۰ است
|
||||
# (پیشتر null به NOT NULL میخورد و ۵۰۰ میداد).
|
||||
deviceId = serializers.CharField(max_length=64, required=False, allow_blank=True)
|
||||
|
||||
|
||||
class RefreshRequestSerializer(serializers.Serializer):
|
||||
@@ -99,7 +96,7 @@ class UpdateProfileRequestSerializer(serializers.Serializer):
|
||||
ورودی PATCH /api/user/profile — همهی فیلدها اختیاریاند و فقط همانهایی
|
||||
که فرستاده شوند تغییر میکنند (partial update واقعی).
|
||||
|
||||
`phone` و `isGuest` عمداً اینجا نیستند: شماره فقط از مسیرِ OTP عوض
|
||||
`phone` عمداً اینجا نیست: شماره فقط از مسیرِ OTP عوض
|
||||
میشود و مهمانبودن را کاربر نباید بتواند خودش تغییر دهد.
|
||||
"""
|
||||
name = serializers.CharField(max_length=100, required=False, allow_blank=True)
|
||||
@@ -195,7 +192,6 @@ class ProfileResponseSerializer(serializers.Serializer):
|
||||
phone = serializers.CharField(allow_null=True)
|
||||
name = serializers.CharField()
|
||||
avatar = serializers.CharField()
|
||||
isGuest = serializers.BooleanField()
|
||||
gradeId = serializers.IntegerField(allow_null=True)
|
||||
birthYear = serializers.IntegerField(allow_null=True)
|
||||
birthDate = serializers.CharField(allow_null=True, help_text='شمسی، «1385-04-12»؛ null اگر فقط سال داده شده.')
|
||||
@@ -203,10 +199,8 @@ class ProfileResponseSerializer(serializers.Serializer):
|
||||
|
||||
|
||||
class DeleteAccountRequestSerializer(serializers.Serializer):
|
||||
# کاربرِ شمارهدار: کدِ پیامکیِ تازه (از POST /api/auth/otp/request با همان شماره).
|
||||
otp = OTPCodeField(required=False, allow_blank=True)
|
||||
# مهمان شمارهای ندارد که کد بگیرد؛ باید همین کلمه را تایپ کرده باشد.
|
||||
confirm = serializers.CharField(max_length=10, required=False, allow_blank=True)
|
||||
# کدِ پیامکیِ تازه (از POST /api/auth/otp/request با همان شماره).
|
||||
otp = OTPCodeField()
|
||||
|
||||
|
||||
class DeleteAccountResponseSerializer(serializers.Serializer):
|
||||
|
||||
Reference in New Issue
Block a user