Rust 导入宏时编译器功能发生冲突

Rust 导入宏时编译器功能发生冲突,rust,rust-diesel,rust-rocket,Rust,Rust Diesel,Rust Rocket,我试图使用柴油箱中的一些宏,但他们说它们没有被导入,即使是显式导入 我认为问题来自于使用feature decl_宏。为了使用某些不安全的宏,rocket需要此功能“[rustc E0658][E]宏是实验性的”,但我不确定 rocket rs文档中提到使用柴油机的方式是使用rocket\u contrib::databases::diesel。 我想使用的东西是在rocket\u contrib::databases::diesel::prelude::Insertable或只是diesel:

我试图使用柴油箱中的一些宏,但他们说它们没有被导入,即使是显式导入

我认为问题来自于使用feature decl_宏。为了使用某些不安全的宏,rocket需要此功能“[rustc E0658][E]
是实验性的”,但我不确定

rocket rs文档中提到使用柴油机的方式是使用
rocket\u contrib::databases::diesel

我想使用的东西是在
rocket\u contrib::databases::diesel::prelude::Insertable
或只是
diesel::prelude::Insertable
,表名在同一位置

这是我的导入代码

#![功能(过程宏、数据宏)]
使用rocket::request:{Form,FromForm};
使用火箭::请求;
使用火箭::*;
#[宏使用]外部板条箱火箭控制器;
使用rocket_contrib::databases::diesel;
使用rocket_contrib::databases::diesel::prelude::*;
//--剪断--
下面的代码表示缺少Insertable和宏表名称

/--snip--
#[派生(可插入、调试)]
#[表_name=“重定向”]

pub struct Redirect
diesel::prelude::Insertable
是特性,而不是实现它的派生宏。改用
diesel::Insertable
error: cannot find derive macro `Insertable` in this scope
  --> src/main.rs:20:10
   |
20 | #[derive(Insertable, Debug)]
   |          ^^^^^^^^^^
error: cannot find attribute `table_name` in this scope
  --> src/main.rs:21:3
   |
21 | #[table_name="redirects"]
   |   ^^^^^^^^^^