테이블 MemberDeclareRecept
및 Member
의 데이터를 다음 구성 파일로 가져올 수있었습니다. 여기에서 나는 MemberDeclareRecept.pk
을 찾고 있습니다. 대신 Member.CoId
을 검색하면 어떻게 모든 데이터를 얻을 수 있습니까? MemberSearchByCode
보기는 테이블의 모든 멤버를 제공하지만 특정 멤버를 얻을 수 없습니다. 여기Django REST 프레임 워크 필터링보기
내가 현재 사용하고 내 모델
class Member(models.Model):
Name = models.CharField(max_length=40,null=True)
FirstName = models.CharField(max_length=40,null=True)
DateBirth = models.DateField(,null=True)
CoId = models.CharField(max_length=6,null=True)
class MemberDeclareRecept(models.Model):
SyMember=models.ForeignKey(Member,verbose_name='Name member ',null=True,related_name='Member')
DateDeclareRecept=models.DateField(('Date received',null=True)
그리고
class MemberDeclareSerializer(serializers.ModelSerializer):
member = serializers.StringRelatedField(read_only=True)
SyRecept=serializers.StringRelatedField(read_only=True)
class Meta:
model = MemberDeclareRecept
fields=('id','member','SyRecept')
사용중인 시리얼 그리고 도면이다
class MemberDeclareDetail(generics.ListCreateAPIView):
queryset=MemberDeclareRecep.objects.all()
serializer_class =MemberDeclareSerializer
def get_object(self,pk):
try:
return self.queryset.get(pk=pk)
except MemberDeclareRecep.DoesNotExist:
raise Http404
def get(self, request, pk,format=None):
entries = self.get_object(pk)
serializer = MemberDeclareSerializer(entries)
return Response(serializer.data)
class MemberSearchByCode(generics.ListAPIView):
serializer_class =MemberSerializer
def get_queryset(self):
member=self.request.QUERY_PARAMS.get(Co_id',None)
if membre is not None:
queryset = queryset.filter(member__Name=member
return queryset
몇 가지 추가 정보 누락 : DRF 버전. 이 목록보기에서 필터를 구현하는 몇 가지 방법이 있습니다. http://www.django-rest-framework.org/api-guide/filtering/#filtering –
안녕 미셸을 참조하십시오. 나는 사용자 REST 3.0 – Okkie13
나는 내 문제를 해결하기 위해이를 발견했습니다 : 클래스 MemberSearch (generics.ListAPIView) : 회원 = self.kwargs [ 'Co_id'] 반환 member_declare_recept : serializer_class = MemberDeclareSerializer 데프 (자신을) get_queryset .objects.filter (member__Co_id = member) 의견이나 제안이 있으십니까? – Okkie13