banner
[面包]MrTwoC

[面包]MrTwoC

你好,欢迎来到这个基于区块链的个人博客 名字:面包 / MrTwoc 爱好:跑步(5/10KM)、拿铁咖啡、游戏(Minecraft、Warframe、CS) 兴趣方向:Rust、区块链、图形学、游戏设计与开发
bilibili
steam
email
github

2.电影信息维护 ( 命令行版 )

第一部分的项目代码中,已经实现了在 json 文件中管理电影信息,并通过角色分级,限制电影的增删操作。

这次的代码在此课程基础上,将项目改为 workspace,并将存储电影的 json 文件改为了 sqlite 存储,用数据库进行增删改查,以及利用数据库进行角色判断,

具体代码部分由 db_services.rs 代替原本的 services.rs。里面包括对电影信息的增删改查操作和对用户角色的鉴别功能。

以及 sql_tools.rs 部分实现了数据库的初始化操作,在创建数据库时添加几条测试用的数据,以及将 json 文件读取转移到数据库的函数。

// db_tools.rs
// 将json文件中所有电影信息转移到数据库
fn json_save_to_db(conn: &Connection) -> Result<(), Box<dyn Error>> {
    let movies = read_form_json()?;
    for movie in movies {
        conn.execute(
            "INSERT INTO movies (disc, year, title, remark, user_id) VALUES (?1, ?2, ?3, ?4, ?5)",
            (movie.disc, movie.year, movie.title, movie.remark, 1),
        )?;
    }
    Ok(())
}

完整版代码可见github 仓库

目前初学 rust,感觉写的丑陋,以及 rust 关于 struct 的特性没有用上,后期还可以改的更好一些。

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。