小编Meh*_*jad的帖子

Dynamodb 本地 Web shell 无法加载

我正在按照此处的说明在本地运行 DynamoDB 。为了消除潜在的 docker 网络问题,我使用“本地下载”版本的说明。在本地运行 dynamo 之前,我运行aws configure为 AWS 访问、秘密和区域设置一些假值,以下是输出:

$ aws configure
AWS Access Key ID [****************fake]:
AWS Secret Access Key [****************ake2]:
Default region name [local]:
Default output format [json]:
Run Code Online (Sandbox Code Playgroud)

这是本地运行 dynamo 的输出:

$ java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
Initializing DynamoDB Local with the following configuration:
Port:   8000
InMemory:   false
DbPath: null
SharedDb:   true
shouldDelayTransientStatuses:   false
CorsParams: *
Run Code Online (Sandbox Code Playgroud)

我可以通过使用 aws cli 列出表来确认 DynamoDB 在本地成功运行

$ aws dynamodb list-tables --endpoint-url http://localhost:8000
{
    "TableNames": []
}
Run Code Online (Sandbox Code Playgroud)

但是当我在浏览器中访问 http://localhost:8000/shell …

shell localhost amazon-web-services web amazon-dynamodb

7
推荐指数
1
解决办法
6999
查看次数

HTTP PUT 在 django Rest 框架中无法正常工作

我在 django Rest 框架中使用以下代码来实现放置和修补功能。PATCH (partial_update) 工作正常,但是,为 PUT 提供较少的字段不会像 PUT 请求那样替换整个资源。例如,如果数据如下所示:

{
"id": 6,
"name": "crticial MVP",
"description": "getting things done",
"end": "2012-02-18"   
}
Run Code Online (Sandbox Code Playgroud)

如果我尝试使用以下数据进行 PUT(在http://localhost:800/api/sprints/6/上):

{
    "name": "critical MVP2", 
    "end": "2012-02-18"
}
Run Code Online (Sandbox Code Playgroud)

此调用应将描述设置为无。但描述保留了它的价值,就好像我正在做一个补丁一样。如何在更新功能中强制执行资源替换?

PS:我在初始化序列化器进行更新时设置了partial=False。

视图.py:

class SprintViewSet(viewsets.ModelViewSet):
    queryset = Sprint.objects.order_by('end')
    serializer_class = SprintSerializer 
    def update(self, request, *args, **kwargs):
        sprint=self.get_object()                        
        serializer = SprintSerializer(sprint, data=request.data, partial=False,
 context={'request': request, 'view':self, 'format':None})
        serializer.is_valid(raise_exception=True)       
        serializer.save()
        return Response(serializer.data)
    def partial_update(self, request, *args, **kwargs):
        instance = self.get_object()
        serializer = SprintSerializer(instance, data=request.data, partial=True,
 context={'request': request, 'view':self, …
Run Code Online (Sandbox Code Playgroud)

django http-put django-serializer django-rest-framework http-patch

2
推荐指数
1
解决办法
3530
查看次数