pub fn serialize<S>(
    opt: &Option<DateTime<Utc>>,
    serializer: S
) -> Result<S::Ok, S::Error>where
    S: Serializer,
Expand description

Serialize a UTC datetime into an integer number of seconds since the epoch or none

Intended for use with serdes serialize_with attribute.


use chrono::serde::ts_seconds_option::serialize as to_tsopt;
struct S {
    #[serde(serialize_with = "to_tsopt")]
    time: Option<DateTime<Utc>>

let my_s = S {
    time: Some(Utc.ymd(2015, 5, 15).and_hms(10, 0, 0)),
let as_string = serde_json::to_string(&my_s)?;
assert_eq!(as_string, r#"{"time":1431684000}"#);