Spaces:
Sleeping
Sleeping
| from rest_framework import serializers | |
| from .models import Wp1DUsers, Wp1DUsermeta | |
| class Wp1DUsermetaSerializer(serializers.ModelSerializer): | |
| class Meta: | |
| model = Wp1DUsermeta | |
| fields = ['meta_key', 'meta_value'] | |
| class Wp1DUsersSerializer(serializers.ModelSerializer): | |
| # To include specific metadata directly or handle it differently | |
| # For simplicity, we'll fetch metadata separately in the view for now, | |
| # but DRF has ways to nest serializers or use SerializerMethodField. | |
| class Meta: | |
| model = Wp1DUsers | |
| fields = [ | |
| 'id', 'user_login', 'user_nicename', 'user_email', | |
| 'user_url', 'user_registered', 'display_name' | |
| ] | |
| class WpUserDetailSerializer(serializers.ModelSerializer): | |
| metadata = serializers.SerializerMethodField() | |
| class Meta: | |
| model = Wp1DUsers | |
| fields = [ | |
| 'id', 'user_login', 'user_nicename', 'user_email', | |
| 'user_url', 'user_registered', 'display_name', 'metadata' | |
| ] | |
| def get_metadata(self, obj): | |
| # obj is a Wp1DUsers instance | |
| meta_queryset = WpUsermeta.objects.filter(user=obj) | |
| return {meta.meta_key: meta.meta_value for meta in meta_queryset} |