zmiti atef
zmiti atef

Reputation: 3

HTTP 400 Bad Request in Django REST API while posting data

i have tried to post some data into my database via post method using django restframework, but i have faced this issue HTTP 400 Bad Request : VM972 jquery-3.5.1.min.js:2 POST http://127.0.0.1:8000/newmember/ 400 (Bad Request)

{
    "id":1,
    "first_name": "paul",
    "last_name": "scholes",
    "discipline": "football",
    "start_date": "01-01-2000",
    "end_date": "01-01-2012",
    "email": "[email protected]"
}

the view file

@api_view(['POST'])
def insert_member(request):
    if request.method == "POST":
        # data = JSONParser().parse(request.data)
        member_serializer = MemberSerializer(data=request.data)
        if member_serializer.is_valid():
            member_serializer.save()
            return Response(member_serializer.data,status=201)
        return Response(member_serializer.data,status=400)

urls file

urlpatterns = [
    path('admin/', admin.site.urls),
    path('equipments/', include('equipments.urls')),
    path('gym/',views.equipmentList.as_view()),
    path('newmember/', insert_member,name='insert_member'),
]

serializers file

from rest_framework import serializers
from .models import Member```
    
class MemberSerializer(serializers.ModelSerializer):
    class Meta:
        model = Member
        fields = '__all__'

Upvotes: 0

Views: 1125

Answers (1)

zmiti atef
zmiti atef

Reputation: 3

I've fixed it by making the type of start_date in the models file:

start_date = models.DateTimeField(auto_now_add = True)

instead of

start_date = models.DateField(null=True)

Upvotes: 0

Related Questions