geekorm_core/builder/values/
valchrono.rs

1//! Implementations of `From` trait for chrono types.
2//!
3//! ```rust
4//! use geekorm::prelude::*;
5//! use chrono::{DateTime, Utc};
6//!
7//! #[derive(Table, Clone, Default, serde::Serialize, serde::Deserialize)]
8//! struct User {
9//!     id: PrimaryKeyInteger,
10//!     created_at: DateTime<Utc>,
11//! }
12//! ```
13use super::Value;
14use chrono::{DateTime, TimeZone};
15
16impl<Tz> From<DateTime<Tz>> for Value
17where
18    Tz: TimeZone,
19{
20    fn from(value: DateTime<Tz>) -> Self {
21        Value::Text(value.to_rfc3339())
22    }
23}
24
25impl<Tz> From<&DateTime<Tz>> for Value
26where
27    Tz: TimeZone,
28{
29    fn from(value: &DateTime<Tz>) -> Self {
30        Value::Text(value.to_rfc3339())
31    }
32}