serializers.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. from rest_framework import serializers
  2. from .models import UserBehavior, FeatureMapping, UserInfo
  3. class RecommendedPageSerializer(serializers.Serializer):
  4. recommended_page = serializers.CharField()
  5. alternative_pages = serializers.ListField(child=serializers.CharField())
  6. class UserInfoSerializer(serializers.ModelSerializer):
  7. class Meta:
  8. model = UserInfo
  9. fields = ['phone', 'token']
  10. from rest_framework import serializers
  11. class LoginSerializer(serializers.Serializer):
  12. phone = serializers.CharField(max_length=11)
  13. code = serializers.CharField()
  14. def validate(self, attrs):
  15. # 这里添加实际的验证码验证逻辑
  16. # 示例中保持简单验证
  17. if len(attrs['code']) != 6: # 假设验证码是6位
  18. raise serializers.ValidationError("验证码错误")
  19. return attrs
  20. from rest_framework import serializers
  21. from .models import UserBehavior, FeatureMapping
  22. class UserBehaviorSerializer(serializers.ModelSerializer):
  23. class Meta:
  24. model = UserBehavior
  25. fields = ['id', 'feature_name', 'usage_count', 'last_used']
  26. class FeatureMappingSerializer(serializers.ModelSerializer):
  27. class Meta:
  28. model = FeatureMapping
  29. fields = ['feature_name', 'page_path', 'priority']