DjangoRestFramework Class 序列化程序缺少 "Meta" 属性?
DjangoRestFramework Class Serializers missing "Meta" attribute?
我想在 Django 应用程序中使用 DjangoRestframework,但调用它时出现错误?
调用时,我回复我:
Exception Type: AssertionError
Exception Value: Class CrawlerSerializers missing "Meta" attribute
但我在 serializer
class
中写了 Meta Class
请帮帮我
serializers.py 文件:
from rest_framework import serializers
from models import *
class CrawlerSerializers(serializers.ModelSerializer):
class meta:
model = Crawler
fields = ('source','category','template','url')
我的 View.py 文件:
from rest_framework import status
from rest_framework.decorators import api_view
from rest_framework.response import Response
from models import *
from serializers import *
# Create your views here.
@api_view(['GET','POST'])
def crawler_list(request):
'''
list all task, or create a new task.
'''
if request.method == 'GET':
crawler = Crawler.objects.all()
serializer = CrawlerSerializers(crawler)
return Response(serializer.data)
elif request.method == "POST":
serializer = CrawlerSerializers(data=request.Data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data,status=status.HTTP_201_CREATED)
else:
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
如何解决?
meta
不等于 Meta
。 Python 区分大小写。
将元替换为元
class Meta: #instead of meta write Meta (Capital M)
model = Crawler
fields = ('source','category','template','url')
我想在 Django 应用程序中使用 DjangoRestframework,但调用它时出现错误?
调用时,我回复我:
Exception Type: AssertionError
Exception Value: Class CrawlerSerializers missing "Meta" attribute
但我在 serializer
class
请帮帮我
serializers.py 文件:
from rest_framework import serializers
from models import *
class CrawlerSerializers(serializers.ModelSerializer):
class meta:
model = Crawler
fields = ('source','category','template','url')
我的 View.py 文件:
from rest_framework import status
from rest_framework.decorators import api_view
from rest_framework.response import Response
from models import *
from serializers import *
# Create your views here.
@api_view(['GET','POST'])
def crawler_list(request):
'''
list all task, or create a new task.
'''
if request.method == 'GET':
crawler = Crawler.objects.all()
serializer = CrawlerSerializers(crawler)
return Response(serializer.data)
elif request.method == "POST":
serializer = CrawlerSerializers(data=request.Data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data,status=status.HTTP_201_CREATED)
else:
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
如何解决?
meta
不等于 Meta
。 Python 区分大小写。
将元替换为元
class Meta: #instead of meta write Meta (Capital M)
model = Crawler
fields = ('source','category','template','url')