gpt4 book ai didi

rust - dotenv()。ok()有什么作用?

转载 作者:行者123 更新时间:2023-12-03 11:23:53 27 4
gpt4 key购买 nike

我在PostgreSQL中使用Diesel ORM包装器。我关注的the guide on their website具有以下代码:

pub fn establish_connection() -> PgConnection {
dotenv().ok();

let database_url = env::var("DATABASE_URL")
.expect("DATABASE_URL must be set");
PgConnection::establish(&database_url)
.expect(&format!("Error connecting to {}", database_url))
}
我了解了odotv文档中 dotenv()的作用-它加载了env文件。在源代码中,我看到 dotenv()返回了 Resultok()然后做什么?它能解开结果吗?如果是这样,为什么不使用 unwrap()呢?

最佳答案

这是一种忽略由于未能加载dotenv环境文件而引起的错误的方法。dotenv()返回 Result Result::ok Result转换为 Option 。此Option不会触发有关未使用的Result的警告。

why not use unwrap()


因为您不希望它失败。在生产中,您不应有环境文件,而应使用实际的环境变量。如果您 unwrap ped,那么您的服务将立即在生产中失败。不幸的是,这发生在我身上。

关于rust - dotenv()。ok()有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62546180/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com