我想出了如何使 Diesel 与我的项目一起工作,但是当我尝试使用模式模块中的功能时,我没有从安装了 RLS 扩展的 VS Code 获得代码完成建议。
我还尝试使用 IntelliJ Rust 插件获得建议,但没有成功;也许我错过了一些东西。问题似乎来自宏的使用。
#[macro_use]
extern crate diesel;
use diesel::prelude::*;
mod db;
mod models;
mod schema;
use models::post::Post;
#[get("/")]
fn main() {
use schema::posts::dsl::*;
let connection = db::establish_connection();
let results = posts.load::<Post>(&connection).unwrap();
for post in results {
println!("{}", post.content);
}
}
该代码有效,但在我编写后我从 VS Code 中一无所获posts
。或schema::
。
在我看来,这似乎是 Diesel 的一大特色,我不敢相信用它来完成代码是不可能的。