什么是API端点ModelViewSet

时间:2019-04-09 11:40:12

标签: python django rest django-rest-framework

我已经设法执行“获取一个”并获取所有请求,现在我正尝试通过url删除并创建新用户。

views.py:

class EtudiantViewSet(viewsets.ModelViewSet):
 queryset=Etudiant.objects.all()
 serializer_class=EtudiantSerializer

router.py:

router=routers.DefaultRouter()
router.register('etudiants',EtudiantViewSet)

urls.py:

urlpatterns = [

 url(r'^admin/', admin.site.urls),
 path('api/',include(router.urls)),]

models.py:

class Etudiant(models.Model):

 id=models.IntegerField(primary_key=True)
 nom=models.CharField(max_length=20)
 prenom=models.CharField(max_length=20)

 cne=models.CharField(max_length=10)
 email=models.EmailField()
 tel=models.CharField(max_length=10)

 def __str__(self):
     return 'Nom : {} , Prénom : {}'.format(self.nom,self.prenom)

serializers.py:

class EtudiantSerializer(serializers.ModelSerializer):
 class Meta :
     model=Etudiant
     fields='__all__'

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您已经使用ModelViewSet来控制api。

其中根据您的声明提供以下网址。

  • <host>/api/etudiants/ POST
  • <host>/api/etudiants/<Etudiant id>/ 删除
  • <host>/api/etudiants/<Etudiant id>/ PUT
  • <host>/api/etudiants/<Etudiant id>/ PATCH
  • <host>/api/etudiants/<Etudiant id>/ 获取
  • <host>/api/etudiants/ GET (列表端点)

删除:您可以使用<host>/api/etudiants/<Etudiant id>对象的ID替换<Etudiant id> Etudiant并在该端点上调用DELETE http方法。

创建:使用<host>/api/etudiants/添加 json负载,然后在该端点上调用POST http方法。

如果这对您没有帮助,请在下面输入您的评论。