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 的特性沒有用上,後期還可以改的更好一些。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。