ปัญหา
ตามที่แนะนำในแนวทางปฏิบัติที่ดีที่สุดสำหรับการออกแบบ Pragmatic RESTful API ที่แนะนำในบล็อกฉันต้องการเพิ่มfields
พารามิเตอร์การสืบค้นไปยัง API ที่ใช้ Django Rest Framework ซึ่งช่วยให้ผู้ใช้สามารถเลือกเฉพาะฟิลด์ย่อยต่อทรัพยากร
ตัวอย่าง
Serializer:
class IdentitySerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = models.Identity
fields = ('id', 'url', 'type', 'data')
แบบสอบถามปกติจะส่งคืนทุกฟิลด์
GET /identities/
[
{
"id": 1,
"url": "http://localhost:8000/api/identities/1/",
"type": 5,
"data": "John Doe"
},
...
]
แบบสอบถามที่มีfields
พารามิเตอร์ควรส่งคืนเฉพาะส่วนย่อยของฟิลด์:
GET /identities/?fields=id,data
[
{
"id": 1,
"data": "John Doe"
},
...
]
แบบสอบถามที่มีฟิลด์ที่ไม่ถูกต้องควรละเว้นฟิลด์ที่ไม่ถูกต้องหรือทำให้เกิดข้อผิดพลาดของไคลเอ็นต์
เป้าหมาย
เป็นไปได้หรือไม่? ถ้าไม่วิธีที่ง่ายที่สุดในการนำไปใช้คืออะไร? มีแพ็คเกจของบุคคลที่สามที่ทำสิ่งนี้อยู่แล้วหรือไม่?