ImportError: cannot import name 'ArticleSerializer' from 'basics.serializers'
ImportError: cannot import name 'ArticleSerializer' from 'basics.serializers'
在 Django 中使用序列化程序时 Shell 我不得不从 basics.serializers import ArticleSerializer 导入,我得到的错误是:
P.S。我是 Django 其余框架的初学者
ImportError Traceback(最后一次调用)
在
----> 1 来自 basics.serializers 导入 ArticleSerializer
ImportError:无法从 'basics.serializers'(C:\Users\Sony\PycharmProjects\pythonProject\Frameworks of python\django\django_rest_framework\basics\serializers.py)导入名称 'ArticleSerializer'
basics\serializer.py
serializer.py 的代码是:
from rest_framework import serializer
from basics.models import Article
class ArticleSerializer(serializers.Serializer):
title = serializers.CharField(max_length=100)
author = serializers.CharField(max_length=100)
email = serializers.EmailField(max_length=300)
date = serializers.DateField()
def create(self, validated_data):
return Article.objects.create(validated_data)
def update(self, instance, validated_data):
instance.title = validated_data.get('title', instance.title)
instance.author = validated_data.get('author', instance.author)
instance.email = validated_data.get('email', instance.email)
instance.date = validated_data.get('date', instance.date)
instance.save()
return instance
我在终端中使用 python manage.py shell 调用它:
在 [4] 中:从 basics.serializers 导入 ArticleSerializer
有人可以指导我应该做什么吗
它应该来自 basics.serializer import ArticleSerializer 而不是 basics.serializers。是不是拼写错误?
在 Django 中使用序列化程序时 Shell 我不得不从 basics.serializers import ArticleSerializer 导入,我得到的错误是:
P.S。我是 Django 其余框架的初学者
ImportError Traceback(最后一次调用) 在 ----> 1 来自 basics.serializers 导入 ArticleSerializer
ImportError:无法从 'basics.serializers'(C:\Users\Sony\PycharmProjects\pythonProject\Frameworks of python\django\django_rest_framework\basics\serializers.py)导入名称 'ArticleSerializer'
basics\serializer.py serializer.py 的代码是:
from rest_framework import serializer
from basics.models import Article
class ArticleSerializer(serializers.Serializer):
title = serializers.CharField(max_length=100)
author = serializers.CharField(max_length=100)
email = serializers.EmailField(max_length=300)
date = serializers.DateField()
def create(self, validated_data):
return Article.objects.create(validated_data)
def update(self, instance, validated_data):
instance.title = validated_data.get('title', instance.title)
instance.author = validated_data.get('author', instance.author)
instance.email = validated_data.get('email', instance.email)
instance.date = validated_data.get('date', instance.date)
instance.save()
return instance
我在终端中使用 python manage.py shell 调用它:
在 [4] 中:从 basics.serializers 导入 ArticleSerializer
有人可以指导我应该做什么吗
它应该来自 basics.serializer import ArticleSerializer 而不是 basics.serializers。是不是拼写错误?