小编Kus*_*era的帖子

Django Model()vs Model.objects.create()

运行两个命令之间的区别是什么:

foo = FooModel()
Run Code Online (Sandbox Code Playgroud)

bar = BarModel.objects.create()
Run Code Online (Sandbox Code Playgroud)

第二个是否立即BarModel在数据库中创建一个,而for FooModel,save()必须显式调用该方法以将其添加到数据库中?

python database django django-models

231
推荐指数
5
解决办法
17万
查看次数

如何在Django模型上存储字典?

我需要在Django模型中存储一些数据.这些数据不等于模型的所有实例.

起初我考虑过继承模型,但我试图保持应用程序的灵活性.如果我使用子类,每次需要一种新的对象时我都需要创建一个完整的类,这并不好.我最终会得到很多子类来存储一对额外的字段.

我真的觉得字典是最好的方法,但Django文档中没有关于在Django模型中存储字典(或者我找不到它)的内容.

有线索吗?

python django orm persistence django-models

50
推荐指数
9
解决办法
5万
查看次数

Django JSON响应错误状态

我的API在出错时返回JSON对象,但状态代码为HTTP 200:

response = JsonResponse({'status': 'false', 'message': message})
return response
Run Code Online (Sandbox Code Playgroud)

如何更改响应代码以指示错误?

python django tastypie

47
推荐指数
4
解决办法
3万
查看次数

Django Rest Framework部分更新

我正在尝试partial_update使用Django Rest Framework实现,但我需要一些澄清,因为我被卡住了.

  1. 为什么我们需要指定partial = True?
    根据我的理解,我们可以轻松更新partial_update方法内的Demo对象.这样做的目的是什么?

  2. 什么是序列化变量?方法
    serialized变量的内部是什么partial_update?那是一个Demo对象吗?在幕后调用什么功能?

  3. 如何在这里完成实施?

视图集

class DemoViewSet(viewsets.ModelViewSet):
    serializer_class = DemoSerializer

    def partial_update(self, request, pk=None):
        serialized = DemoSerializer(request.user, data=request.data, partial=True)
        return Response(status=status.HTTP_202_ACCEPTED)
Run Code Online (Sandbox Code Playgroud)

串行

class DemoSerializer(serializers.ModelSerializer):
    class Meta:
        model = Demo
        fields = '__all__'

    def update(self, instance, validated_data):
        print 'this - here'
        demo = Demo.objects.get(pk=instance.id)
        Demo.objects.filter(pk=instance.id)\
                           .update(**validated_data)
        return demo
Run Code Online (Sandbox Code Playgroud)

python django django-rest-framework

45
推荐指数
4
解决办法
4万
查看次数

序列化django休息框架时的附加字段

我是django rest框架的新手,并创建了一个示例Employee模型.

我的models.py:

class Employees(models.Model):
    created = models.DateTimeField(auto_now_add=True)
    first_name = models.CharField(max_length=100)
    last_name = models.CharField(max_length=100)
Run Code Online (Sandbox Code Playgroud)

我的serializers.py:

class EmployeeSerializer(serializers.Serializer):
    class Meta:
        model = Employees
        fields = ('first_name','last_name')
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我想要一个额外的字段full_name,这将是first_name + last_name.

如何定义这个全新的领域full_name,我serializers.py

django django-models django-rest-framework

44
推荐指数
3
解决办法
2万
查看次数

django-rest-framework:api版本控制

因此谷歌搜索似乎普遍的共识是在REST URI中嵌入版本号是一种不好的做法,也是一个坏主意.

即便如此,也有强有力的支持者支持这一点.
例如,API版本控制的最佳实践?

我的问题是如何在django-rest-framework中完成使用accept header/content negotiation的提议解决方案来实现这一目标.

看起来框架中的内容协商,
http://django-rest-framework.org/api-guide/content-negotiation/ 已经配置为根据接受的MIME类型自动返回预期值.如果我开始使用自定义类型的Accept标头,我将失去框架的这种好处.

有没有更好的方法在框架中实现这一目标?

python api django rest django-rest-framework

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

Django模型中的并发控制

如何在Django模型中处理并发?我不希望记录的更改被另一个读取相同记录的用户覆盖.

python django concurrency django-models

17
推荐指数
3
解决办法
1万
查看次数

使用公共 ECR 图像作为 lambda 函数

目前是否可以使用公共 ECR 镜像来部署 lambda?我尝试创建公共 ECR 映像,但在 Web 界面中看到错误。我看到错误:“这是无效的 Elastic Container Registry 映像 URI”

Dockerfile:


FROM public.ecr.aws/lambda/nodejs:12
# Alternatively, you can pull the base image from Docker Hub: amazon/aws-lambda-nodejs:12

COPY app.js package.json /var/task/

# Install NPM dependencies for function
RUN npm install

# Set the CMD to your handler (could also be done as a parameter override outside of the Dockerfile)
CMD [ "app.handler" ]
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

docker aws-lambda amazon-ecr amazon-ecr-public

16
推荐指数
1
解决办法
3942
查看次数

使用AWS Cognito进行身份验证的示例(boto3)

我正在使用boto3尝试AWS Cognito.通过阅读AWS文档,我发现很难理解.我正在寻找一个有一步一步解释的示例或教程.

我已经创建了一个Facebook应用程序和Cognito身份池.

类似于node.js的退格Cognito教程

amazon-web-services oauth-2.0 facebook-authentication amazon-cognito boto3

10
推荐指数
1
解决办法
1万
查看次数

Peewee模型中的Auto_increment自定义主键

我想要一个主键id字段Bigint

class Tweets(Model):
    id = BigIntegerField(primary_key=True)
    ...
Run Code Online (Sandbox Code Playgroud)

但它需要自动递增,我在 Peewee 文档中找不到方法。如果可能,请提出建议。

更新:我正在使用 MySql 数据库。

python mysql peewee

5
推荐指数
2
解决办法
8174
查看次数