@细节路由:对象没有属性-Django Rest框架
我得到一个关于@detail\u路线的问题。希望你们能帮忙 这是我的视图集。我使用装饰器来导入详细信息 我的视图集:@细节路由:对象没有属性-Django Rest框架,django,django-rest-framework,Django,Django Rest Framework,我得到一个关于@detail\u路线的问题。希望你们能帮忙 这是我的视图集。我使用装饰器来导入详细信息 我的视图集: class PhotoUpdateSerializer(ModelSerializer): class Meta: model = Photo fields = [ 'image', 'is_public', 'caption' ] class Uplo
class PhotoUpdateSerializer(ModelSerializer):
class Meta:
model = Photo
fields = [
'image',
'is_public',
'caption'
]
class UploadAvatarPhotoAPIView(ReadOnlyModelViewSet):
serializer_class = PhotoUpdateSerializer
queryset = Photo.objects.all()
@detail_route(methods=['POST'])
def upload_avatar(self, request, username):
avatarqs = Photo.objects.create(
user=self.request.user,
caption=self.caption,
image=self.image,
is_public=self.is_public
)
serializer = PhotoUpdateSerializer(avatarqs)
return Response(serializer.data)
错误:“UploadAvatarphotopiView”对象没有属性“caption”
我认为有三行是错误的:
caption=self.caption,
image=self.image,
is_public=self.is_public
您需要
request.POST
来获取数据
caption = request.POST['caption']
is_public = request.POST['is_public']
和图像数据
image=request.FILES.get('image')
更新
您需要在表单标记中将enctype
设置为multipart/form data
,以便在上载文件时在request.FILES
中获取数据
<form action="" method="post" enctype="multipart/form-data">
您需要
请求。POST
获取数据
caption = request.POST['caption']
is_public = request.POST['is_public']
和图像数据
image=request.FILES.get('image')
更新
您需要在表单标记中将enctype
设置为multipart/form data
,以便在上载文件时在request.FILES
中获取数据
<form action="" method="post" enctype="multipart/form-data">
谢谢!我成功了!投票给yaSorry,我在发布内容类型:Content\u Type=ContentType.objects.get(model='photos'),
时遇到了这个错误。问题:int()参数必须是字符串或数字,而不是“照片”
希望您的帮助!执行类似于ContentType.objects.get\u for\u model(Photo)
,检查int()参数必须是字符串或数字,而不是“Photos”
的操作也会出现此错误。@FeedGit您可以单独问这个问题,肯定有人会帮助您的。谢谢!我成功了!投票给yaSorry,我在发布内容类型:Content\u Type=ContentType.objects.get(model='photos'),
时遇到了这个错误。问题:int()参数必须是字符串或数字,而不是“照片”
希望您的帮助!执行类似于ContentType.objects.get\u for\u model(Photo)
,检查int()参数必须是字符串或数字,而不是“Photos”
的操作也会出现此错误。@FeedGit您可以单独问这个问题,肯定有人会帮助您的。