0
Model_A
의 데이터를 채우는 REST API를 만들었습니다. 하지만 이제 다른 모델에서 오는 API에 다른 데이터 필드를 추가해야합니다. parent
필드를 에서 내 API에 추가하고 parent
필드도 정확하게 Model_A
프로젝트와 연결해야합니다. 예를 들어 아래의 예는 내가 수행하려고 시도하지만 작동하지 않습니다 (참고 : model.py는 아닙니다.) 어쨌든에서 변경 될 수 :다른 모델의 다른 필드를 REST API에 추가
API : 필요한 코드의
class ReportAPI(APIView):
def get(self, request):
project_data = []
all_projects = Model_A.objects.all()
for project in all_projects:
project_data.append(project)
project_parent = ModelParent.objects.filter(project=project.id)
for parent in project_parent:
project_data.append(parent)
project_serializer = SerializerA(all_projects, many=True)
return Response(project_serializer.data)
나머지 :
모델 :
,class Model_A(models.Model):
project_name = models.CharField(max_length=50, unique=True)
project_type = models.CharField(max_length=50, choices=p_type)
class ModelParent(models.Model):
project = models.ForeignKey('Model_A', on_delete=models.CASCADE, related_name='+')
parent = models.ForeignKey('ModelParent', on_delete=models.SET(''), related_name='+', null=True, blank=True)
시리얼 : 내 API의
class SerializerA(serializers.ModelSerializer):
class Meta:
model = Model_A
fields = ('id', 'project_name','project_type')
depth = 1
전류 출력
[
{
"id": 1,
"project_name": "Project A",
"project_type": "advertisement",
}
]
원하는 출력 :
[
{
"id": 1,
"project_name": "Project A",
"project_type": "advertisement",
"parent_list": [
{
id : "1",
parent : "Parent 1",
},
{
id : "2",
parent : "Parent 2",
},
]
}
]
어떤 도움이 많이 감사합니다 감사합니다! 다음과 같이
안녕 @Maulik 덕분에 덕분에, 내 사과는 내가 언급 했어야하는 I 어쨌든 모델로 단련 할 수는 없습니다. 그럼에도 불구하고 나는 여전히 당신의 코드 tqvm을 구현하려고 할 것이다. –