本文整理汇总了Python中rest_framework.serializers.DateTimeField方法的典型用法代码示例。如果您正苦于以下问题:Python serializers.DateTimeField方法的具体用法?Python serializers.DateTimeField怎么用?Python serializers.DateTimeField使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rest_framework.serializers
的用法示例。
在下文中一共展示了serializers.DateTimeField方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: add_serializer
# 需要导入模块: from rest_framework import serializers [as 别名]
# 或者: from rest_framework.serializers import DateTimeField [as 别名]
def add_serializer(table):
fields = table.fields.all()
attributes = {}
for field in fields:
args = {
"label": field.alias
}
if not field.required:
args["default"] = None
args["allow_null"] = True
if field.type == 3:
args["format"] = "%Y-%m-%dT%H:%M:%S"
elif field.type == 6:
args["protocol"] = "IPv4"
f = FIELD_TYPE_MAP[field.type](**args)
if(field.is_multi):
attributes[field.name] = serializers.ListField(default=[], child=f)
else:
attributes[field.name] = f
# if(field.type == 0):
# attributes["validate_{}".format(field.name)] = empty_none
#创建者拿到视图aQ!
# attributes["S-creator"] = serializers.CharField(read_only=True, default=serializers.CurrentUserDefault())
attributes["S-creation-time"] = serializers.DateTimeField(read_only=True, format="%Y-%m-%dT%H:%M:%S",
default=datetime.datetime.now)
attributes["S-last-modified"] = serializers.CharField(default=None, allow_null=True, read_only=True, label="最后修改人")
serializer = type(table.name, (Serializer, ), attributes)
setattr(app_serializers, table.name, serializer)
示例2: update
# 需要导入模块: from rest_framework import serializers [as 别名]
# 或者: from rest_framework.serializers import DateTimeField [as 别名]
def update(self, request, *args, **kwargs):
try:
res = es.get(index="test_12", doc_type="one", id=kwargs["pk"])
except NotFoundError as exc:
raise exceptions.NotFound("Document {} was not found in Type one of Index test_12".format(kwargs["pk"]))
except Exception as exc:
raise exceptions.APIException("内部错误, 错误类型:{}".format(type(exc)))
his_data = res["_source"]
partial = kwargs.get("partial", False)
serializer = self.get_serializer(data=request.data, partial=partial)
serializer.is_valid(raise_exception=True)
data = copy.copy(his_data)
is_equal = True
for k,v in serializer.validated_data.items():
if k[0] == "S":
continue
if isinstance(serializer.fields.fields[k], serializers.DateTimeField):
if isinstance(v, list):
v = list(map(lambda x: x.isoformat(), v))
else:
v = v.isoformat()
data[k] = v
if his_data[k] != v:
is_equal = False
break
if is_equal:
raise exceptions.ParseError(detail="No field changes")
his_data.pop("S_creator")
his_data.pop("S_creation_time")
his_data["S_data_id"] = kwargs["pk"]
his_data["S_changer"] = request.user.username
his_data["S_update_time"] = datetime.datetime.now()
try:
es.index(index="test_22", doc_type="one", id=uuid.uuid1(), body=his_data)
res = es.index(index="test_12", doc_type="one", id=kwargs["pk"], body=data)
except Exception as exc:
raise exceptions.APIException("内部错误,错误类型: {}".format(type(exc)))
return Response(res)
示例3: test_should_date_time_convert_datetime
# 需要导入模块: from rest_framework import serializers [as 别名]
# 或者: from rest_framework.serializers import DateTimeField [as 别名]
def test_should_date_time_convert_datetime():
assert_conversion(serializers.DateTimeField, graphene.types.datetime.DateTime)
示例4: __init__
# 需要导入模块: from rest_framework import serializers [as 别名]
# 或者: from rest_framework.serializers import DateTimeField [as 别名]
def __init__(self, allow_extra):
class Model(serializers.Serializer):
id = serializers.IntegerField()
client_name = serializers.CharField(max_length=255, trim_whitespace=False)
sort_index = serializers.FloatField()
# client_email = serializers.EmailField(required=False, allow_null=True)
client_phone = serializers.CharField(max_length=255, trim_whitespace=False, required=False, allow_null=True)
class Location(serializers.Serializer):
latitude = serializers.FloatField(required=False, allow_null=True)
longitude = serializers.FloatField(required=False, allow_null=True)
location = Location(required=False, allow_null=True)
contractor = serializers.IntegerField(required=False, allow_null=True, min_value=0)
upstream_http_referrer = serializers.CharField(
max_length=1023, trim_whitespace=False, required=False, allow_null=True
)
grecaptcha_response = serializers.CharField(min_length=20, max_length=1000, trim_whitespace=False)
last_updated = serializers.DateTimeField(required=False, allow_null=True)
class Skill(serializers.Serializer):
subject = serializers.CharField()
subject_id = serializers.IntegerField()
category = serializers.CharField()
qual_level = serializers.CharField()
qual_level_id = serializers.IntegerField()
qual_level_ranking = serializers.FloatField(default=0)
skills = serializers.ListField(child=Skill())
self.allow_extra = allow_extra # unused
self.serializer = Model
示例5: get_text
# 需要导入模块: from rest_framework import serializers [as 别名]
# 或者: from rest_framework.serializers import DateTimeField [as 别名]
def get_text(self, instance):
"""
Haystack facets are returned as a two-tuple (value, count).
The text field should contain the faceted value.
"""
instance = instance[0]
if isinstance(instance, (six.text_type, six.string_types)):
return serializers.CharField(read_only=True).to_representation(instance)
elif isinstance(instance, datetime):
return serializers.DateTimeField(read_only=True).to_representation(instance)
return instance