无法在 Rust/Actix 应用程序中使用柴油计时功能

Unable to use chrono feature with diesel in Rust/Actix application

我在 Rust 方面还是个菜鸟。

我尝试在我的一些柴油模型中使用 NaiveDateTime。

因此我尝试像这样将 chrono 导入为外部板条箱:

src/db/models.rs

extern crate diesel;
extern crate chrono;

use diesel::{sql_types};
use chrono;

// model implementations follow below ...

但是我收到一个生锈错误:

can't find crate for `chrono`: can't find crate

chrono 被声明为柴油机功能。我的 Cargo.toml 看起来像这样:

[package]
name = "backend"
version = "0.1.0"
authors = ["My Name <my@emai.l>"]
edition = "2018"

[dependencies]
actix-web="3"
diesel= { version = "1.4.5", features = ["mysql", "chrono"] }
dotenv= { version = "0.15.0" }

[[bin]]
name = "main"
path = "src/main.rs"

我做错了什么?

您需要自己安装chrono

[dependencies]
actix-web = "3"
chrono = "0.4"
diesel = { version = "1.4.5", features = ["mysql", "chrono"] }
dotenv = { version = "0.15.0" }

chrono 功能添加到 diesel 只会使 diesel 编译时依赖于 chrono 并粘合代码以将其集成。但是,要在 你自己的 crate 中使用 chrono,你仍然必须在 Cargo.toml.

中声明它