尝试在elasticsearch-dsl.py持久性api中使用Date时发生异常

时间:2018-07-17 09:14:44

标签: elasticsearch-dsl elasticsearch-dsl-py

我正在尝试使用persistence API,并使用elasticsearch-dsl版本6.2.1,如下所示:

class MyClass(Document):
    start = Date(format='dd-MM-yyyy HH:mm:ss:SSS')
    stop = Date(format='dd-MM-yyyy HH:mm:ss:SSS')

当我致电MyClass.init()时 我(通过Kibana)看到确实映射符合我的预期:

    "start": {
      "type": "date",
      "format": "dd-MM-yyyy HH:mm:ss:SSS"
    },
    "stop": {
      "type": "date",
      "format": "dd-MM-yyyy HH:mm:ss:SSS"
    }

我有一个变量my_instance,它是MyClass的一个实例。 my_instance.startmy_instance.stop包含以下字符串 '15 -06-2018 02:54:05:382'

当我致电my_instance.save()时,出现以下异常:

elasticsearch_dsl.exceptions.ValidationException: {'start': 
[ValidationException("Could not parse date from the value ('15-06-2018 
02:54:05:281')", ValueError('Unknown string format:', '15-06-2018 
02:54:05:281'))], 'stop': [ValidationException("Could not parse date from the 
value ('15-06-2018 02:54:05:382')", ValueError('Unknown string format:', '15- 
06-2018 02:54:05:382'))]}

我在做什么错了?

1 个答案:

答案 0 :(得分:1)

很遗憾,With UserForm_Name .StartUpPosition = 0 .Left = Application.Left + (0.5 * Application.Width) - (0.5 * .Width) .Top = Application.Top + (0.5 * Application.Height) - (0.5 * .Height) .Show End With 当前仅支持ISO格式的日期。如果要使用其他格式,则需要自己指定(de)序列化。