跳转到主要内容

为(Django)添加额外字段。

项目描述

为(Django)添加额外字段。

PyPI Version Supported Python versions Build Status Documentation Status GPL-2.0-only OR LGPL-2.1-or-later Coverage

先决条件

  • Django 1.11, 2.0, 2.1, 2.2和3.0。

  • Python 2.7, 3.6, 3.7和3.8。

文档

文档可在Read the Docs上找到。

主要功能和亮点

  • MD5Field。

安装

  1. 从PyPI安装最新稳定版本

    pip install django-strawberry

    或从GitHub的最新稳定版本

    pip install https://github.com/barseghyanartur/django-strawberry/archive/stable.tar.gz

    或从BitBucket的最新稳定版本

    pip install https://bitbucket.org/barseghyanartur/django-strawberry/get/stable.tar.gz

用法

MD5字段

如果您想从同一模型的另一个字段中填充MD5字段。

示例1

myapp/models.py

from django.db import models
from strawberry.fields import MD5Field

class MyModel(models.Model):

    title = models.CharField(max_length=255)
    title_hash = MD5Field(
        populate_from='title',
        null=True,
        blank=True
    )

    def __str__(self):
        return self.title

myapp/example.py

from myapp.models import MyModel

mymodel = MyModel.objects.create(title="Lorem7")
print(mymodel.title_hash)
'd48a712e77902d0558a3721d9a4740c9'

示例2

参数 populate_from 也可以是一个可调用对象,它将期望模型实例作为参数。因此,与第一个示例相同的示例将是

myapp/models.py

from django.db import models
from strawberry.fields import MD5Field


def strip_title(instance):
    return instance.title.strip()


class MyModel(models.Model):

    title = models.CharField(max_length=255)
    title_hash = MD5Field(
        populate_from=strip_title,
        null=True,
        blank=True,
    )

    def __str__(self):
        return self.title

myapp/example.py

from myapp.models import MyModel

mymodel = MyModel.objects.create(title=" Lorem7 ")
print(mymodel.title_hash)
'd48a712e77902d0558a3721d9a4740c9'

测试

项目已覆盖测试。

要测试所有支持的Python/Django版本,请输入

tox

要针对特定环境进行测试,请输入

tox -e py38-django30

要仅测试您的工作环境,请输入

./runtests.py

要运行您工作环境中的单个测试,请输入

./runtests.py src/strawberry/tests/test_fields.py

./manage.py test strawberry.tests.test_fields

假设您已安装所有要求。如果没有,首先安装测试要求

pip install -r examples/requirements/test.txt

编写文档

保持以下层次结构。

=====
title
=====

header
======

sub-header
----------

sub-sub-header
~~~~~~~~~~~~~~

sub-sub-sub-header
^^^^^^^^^^^^^^^^^^

sub-sub-sub-sub-header
++++++++++++++++++++++

sub-sub-sub-sub-sub-header
**************************

许可证

GPL-2.0-only OR LGPL-2.1-or-later

支持

如有任何问题,请联系作者部分的电子邮件地址。

作者

Artur Barseghyan <artur.barseghyan@gmail.com>

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

django-strawberry-0.1.2.tar.gz (33.8 kB 查看哈希值)

上传时间

构建分发

django_strawberry-0.1.2-py2.py3-none-any.whl (26.4 kB 查看哈希值)

上传时间 Python 2 Python 3

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面