- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过与 actix-web
一起使用 Rust 来学习它。和 diesel
.
当我尝试通过使用 crate 名称导入/使用模式时,它仅适用于 example.rs
文件但不在 post.rs
中文件。这两个文件都嵌套在自己的文件夹中,我使用的命令如下:use web_project_core::schema::posts;
当我改用这个其他命令时,它在 post.rs
中工作但不在 example.rs
中:use super::super::schema::posts;
我错过了什么?
// Cargo.toml
[lib]
name = "web_project_core"
path = "src/lib.rs"
[[bin]]
name = "main"
path = "src/main.rs"
// main.rs
use actix_web::{App, HttpServer};
mod handlers;
// lib.rs
#[macro_use]
extern crate diesel;
extern crate dotenv;
use diesel::prelude::*;
use diesel::pg::PgConnection;
use dotenv::dotenv;
use std::env;
pub mod schema;
pub mod modelz;
// post.rs
use serde::{Serialize, Deserialize};
use nanoid::generate;
use super::super::schema::posts; // <-- it works
// use web_project_core::schema::posts; // <-- it doesn't work
// example.rs
use actix_web::{get, web, post, HttpResponse, Responder};
use diesel::prelude::*;
use web_project_core::establish_connection;
use web_project_core::schema::posts; // <-- it works
// use super::super::schema::posts; // <-- it doesn't work
use web_project_core::modelz::post::*;
项目结构:
最佳答案
example.rs
之间的区别和 post.rs
是post.rs
在图书馆的箱子里 web_project_core
而example.rs
在二进制包中 main
.
路径web_project_core::schema::posts
在 post.rs
中不可用如web_project_core
是当前的 crate,而不是依赖项。
而不是 web_project_core::schema::posts
你可以使用 crate::schema::posts
, 当指的是当前的箱子时。二进制文件隐式依赖于库,因为它们位于同一个包中,路径为 web_project_core::schema::posts
可用 example.rs
关于rust - 使用未声明的箱子或模块, "use crate_name::schema::posts"并不总是有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65787479/
我正在尝试通过与 actix-web 一起使用 Rust 来学习它。和 diesel . 当我尝试通过使用 crate 名称导入/使用模式时,它仅适用于 example.rs文件但不在 post.rs
我是一名优秀的程序员,十分优秀!