RUST勉強中、8/21の積み上げ

前回の続き

データベースに追加する処理と削除する処理を作成していきます。

まず、フォームのデータを取得するのにserdeクレートを使用します。

[package]
name = "todo"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
actix-web = { version = "4.1" }
actix-rt = { version = "2.7" }
thiserror = { version = "1.0" }
askama = { version = "0.11" }
rusqlite = { version = "0.28", features=["bundled"] }
r2d2 = { version = "0.8" }
r2d2_sqlite = { version = "0.21" }
serde = { version = "1.0", feature = ["derive"] }

次に追加、削除のパスを作成していきます。

まずは追加処理。

#[post("/add")]
async fn add_todo (
    params: web::Form<AddParams>,
    db: web::Data<r2d2::Pool<SqliteConnectionManager>>,
) -> Result<HttpResponse, MyError> {
    let conn = db.get()?;
    conn.execute("INSERT INTO todo (text) VALUES (?)", &[&params.text])?;
    Ok(HttpResponse::SeeOther()
        .header(header::LOCATION, "/")
        .finish())
}

同じように削除処理。

#[post("/delete")]
async fn delete_todo(
    params: web::Form<DeleteParams>,
    db: web::Data<r2d2::Pool<SqliteConnectionManager>>,
) -> Result<HttpResponse, MyError> {
    let conn = db.get()?;
    conn.execute("DELETE FROM todo WHERE id=?", &[&params.id])?;
    Ok(HttpResponse::SeeOther()
        .header(header::LOCATION, "/")
        .finish())
}

そして、追加・削除のパスをサーバに登録。

#[actix_rt::main]
async fn main() -> Result<(), actix_web::Error> {
    let manager = SqliteConnectionManager::file("todo.db");
    let pool = Pool::new(manager).expect("Failed to inithialize the connection pool.");
    let conn = pool.get().expect("Failed to get the connection from the pool.");
    conn.execute(
        "CREATE TABLE IF NOT EXISTS todo (
            id INTEGER PRIMARY KEY AUTOINCREMENT,
            text TEXT NOT NULL
        )",
        params![],
    )
    .expect("Failed to create a table 'todo'.");
    HttpServer::new(move || {
        App::new()
        .service(index)
        .service(add_todo)
        .service(delete_todo)
        .data(pool.clone())
        })
        .bind("0.0.0.0:8080")?
        .run()
        .await?;
    Ok(())
}

ITニュース(08/22)

「新たな核テロだ」ウクライナ第2の原発近くをロシア軍が攻撃(2022年8月21日) – ANNnewsCH

ウクライナ当局はロシア軍が国内で2番目に大きい原発近くの住宅を攻撃し、14人が負傷したと発表しました。原発の運営会社は「新たな核のテロだ」と強く非難しています。 南部ミコライウ州の知事はロシア軍が20日、国内で2番目に大きい南ウクライナ原発から約30キロ離れた住宅をミサイルで攻撃し、子ども3人を含む14人がけがを…

「iPhone 11」以前の中古品、大手携帯電話会社が販売する理由は? 3社に聞く – オトナンサー

大手携帯電話会社が、2019年以前のモデルの中古iPhoneを販売するのはなぜなのでしょうか。NTTドコモ、KDDI、ソフトバンクにそれぞれ聞きました。

スマホでマイナンバーカード、いったい何が便利になるの? 政府が掲げる5つの方針とは – ケータイ Watch

政府は、スマートフォンにマイナンバーカードの機能を搭載する計画について、今年度中にAndroidスマートフォンへの搭載実現を目指し、iPhoneへの搭載についても早期実現を目指している。

黒い義手の“英雄”が証言 クリミア爆発は「スマホ位置情報によるドローン攻撃」 – テレビ朝日

ロシアが実効支配する南部クリミアで相次ぐ軍事施設の爆発。
関与が指摘されているのがウクライナの非正規部隊パルチザンです。
番組では元パルチザンで「ウクライナの英雄」と呼ばれた人物に話を聞くことができました。

▽ウクライナ反撃の狼煙
(記者)「私たちはウクライナの砲兵隊と一緒にいます。戦闘任務についている部隊です。」
「撃て!」
ロシア軍がウクライナに侵攻して半年。東部のドンバス地方では、今も激しい戦闘が続いています。
(ウクライナ兵)「我々には戦う用意がある。戦い続ける。ベストを尽くして反撃している。士気は高…

〈続・アラフォー記者がコロナになって考えた〉長丁場の自宅療養 ネットスーパーが救いの神に スマホがなければ成り立たないけど… | 鹿児島のニュース – 南日本新聞

<40度の熱、1人暮らし、もし意識を失ったら… アラフォー記者がコロナになって考えた>から続く

目からウロコ…変換ソフトも不要で超簡単! 「PDF」→「Word」にデータ変換する方法が話題に|まいどなニュース – 神戸新聞社

あなたは知ってますか?PDFをWordにする方法

PDFをWordにデータ変換する方法がSNS上で大きな注目を集めている。
「PDFをWord化出来たらなぁ……って前々から思ってたんだけど、Word

Android使いに「Chrome」よりも「Firefox」を勧める7つの理由 – OREFOLDER

Androidブラウザといえばシェア率No1の「Chrome」を想像する人も多く、大半の人が使っているはずです。しかし、筆者はあえて「Firefox」を好き好んで使っています。 IT系時事ではマイナス

Chromebookのランチャーから直接Google画像検索ができるようになるかもしれません – HelenTech

ChromeOSのランチャーにある検索機能は少しずつ進化していて、いまではChromebook内のファイルやWeb検索だけでなく、Androidアプリ(Play ストア)も検索することができます。今後、クラウドゲーミングサービスのゲーム検索…

“ボカロ”シーンはVOCALOIDだけじゃない 重音テト、小春六花、弦巻マキ、可不(KAFU)ら人気で賑わう音声合成ソフトの世界 – リアルサウンド

人の肉声ではなく機械音声の歌唱という手法で、今や新しい音楽として一大ジャンルを築くVOCALOID。従来機械での楽曲制作過程において、最後まで課題として残されていた歌唱を可能にした先駆的技術であり、かつ初音ミク等のキャラクター的認知もあって、現在世間一般的には歌唱能力のある音声合成ソフトをVOCALO…

大学生2人の父が「M2搭載MacBook Air」をオススメする理由 (1/4) – ASCII.jp

「カッコいいから!」だけじゃないMac選び。果たしてM2 MacBook Airを買うべきなのだろうか? 今、まさにパソコンを必要としている娘と息子を持つアップル取材歴12年の筆者がレポート。

Apple、iPhone14発表に伴いiPhone13を9月に値下げか…試算結果も – ライブドアニュース – livedoor

Appleは、2022年9月のiPhone14シリーズの発表に伴い、過去モデルとなるiPhone13シリーズの一部を値下げすると推察されます。過去の値下げ実績を基に、iPhone13の9月以降の新価格を試算しました。AppleがiPhone

Windows上でAndroidアプリが動く、Windows Subsystem for Androidの日本語版を試す (1/2) – ASCII.jp

Windows Subsystem for Androidのプレビューが日本でも公開された。今のところプレビュー版だが、動作条件がWindows 11 Ver.22H2以降となっているので、秋にも公開される次のWindows 11で利用可能になるのではないかと思われる。

GTX 1650+第12世代Core i3でほぼ10万円! ドスパラのMagnate IHが安い – こまめブログ

GTX 1650搭載デスクトップPCは、10万円前後が最安クラスの価格帯です。そのなかでもコスパに優れるのが、ドスパラのMagnate IH。CPUは第12世代のCore i3-12100ですが、10万0280円とリーズ

超高速SDカードの性能を100%引き出せるカードリーダー「SanDisk Professional PRO-READER SD and microSD」の性能をノートPC内蔵カードリーダーと比べてみた – GIGAZINE(ギガジン)

デジタルカメラで撮影できる写真やムービーのファイルサイズは年々大きくなっており、大容量かつ高速なメモリーカードの必要性が高くなっています。しかし、高速なメモリーカードを用意してもカードリーダーの性能が低いと思い通りのスピードで作業できないという状況も起こりがち。ストレージの老舗ブランドSanDiskから登場した「SanDisk Professional PRO-READER SD and microSD」なら高速なSDカードやmicroSDカードの性能を完全に引き出すことが可能とのことなので、実際に超高速SDカー…

経済ニュース(08/22)

ベントレー史上最強、『マリナー・バトゥール』は740馬力ツインターボ搭載 – レスポンス

ベントレーは8月21日、「モントレー・カー・ウィーク2022」に合わせて開催したシグネチャー・パーティーにおいて、『マリナー・バトゥール』(Bentley Mulliner Batur)を初公開した。

「iPhone 11」以前の中古品、大手携帯電話会社が販売する理由は? 3社に聞く – オトナンサー

大手携帯電話会社が、2019年以前のモデルの中古iPhoneを販売するのはなぜなのでしょうか。NTTドコモ、KDDI、ソフトバンクにそれぞれ聞きました。

【100均検証】こんな便利なゴミ袋があったとは!! キャンドゥで買った『ロール式ゴミ袋』に感動のあまり泣きそう – ロケットニュース24

キャンドゥのゴミ袋コーナーを漁っていると、見慣れないゴミ袋が目に入った。名前は『ロール式ゴミ袋』で価格は100円。30Lで16枚入りってのがオトクなのかどうなのか未知 …

【今朝の5本】仕事始めに読んでおきたい厳選ニュース – ブルームバーグ

ロッキー山脈からの涼しい風が吹く米ワイオミング州ジャクソンホールが、今週は世界の注目を集めます。カンザスシティー連銀のウェブサイトによると、同連銀が主催する年次シンポジウムに連邦準備制度理事会(FRB)議長が招待されたのは、1982年のボルカー議長が最初。89年のグリーンスパン議長以降は正式にFRB議長が主役を担う歴史が続いています。「住宅、住宅金融と金融政策」と題された2007年会合は、テーマ発表当時はさほど注目されていなかった住宅市場が開催時には崩壊。タイムリーなシンポジウムとなりました。今年のテーマは「経済…

楽天、携帯民主化へ波高し 「0円廃止」で試される大義 – 日本経済新聞

「血を入れ替えるというと怒られるかもしれないが、優良ユーザーに入れ換えて成長していく」8月10日、楽天グループが開いた2022年1~6月期の決算会見。おなじみの黒いTシャツ姿で現れた会長兼社長の三木谷浩史は、携帯電話料金を支払わない「0円ユーザー」が減ったことをそう表現した。データ使用量が月間1ギガバイト(GB、ギガは10億)まで無料という「0円プラン」の廃止を5月に発表。「我々は悪者だった

年収が高い医薬品会社ランキング2021最新版【全国67社完全版】 – ダイヤモンド・オンライン

革新的な治療薬を開発できれば、業績や社員の給与が急増する医薬品業界。特にMR(医薬情報担当者)はエリートのイメージが強いが、この業界は希望退職者の募集も多く、人材流動性が高いのが現実だ。新型コロナウイルスの国産ワクチンや特効薬の開発状況に注目が集まる中、競争が激しい医薬品業界の「年収」はどうなっているのか。

不思議な「真夏の米株高」 FRBへの過信に危うさ – 日本経済新聞

この夏の米国株は目を見張るような反発劇を演じた。よりどころは、米連邦準備理事会(FRB)に対する完全な信頼だ。FRBが目下の急速な利上げでインフレ鎮静化に成功、返す刀で素早く利下げに転じ、景気後退は回避できるというシナリオを市場は思い描く。そんな神業のような手綱さばきを前提とした株高に危うさはないか。米S&P500種株価指数は先週4305ポイントまで上昇。1月高値から6月安値までの下げ

食品値上げ、メーカー表明幅「未達」3割 過当競争も影 – 日本経済新聞

食品の値上げがメーカーの思うように進んでいない。POS(販売時点情報管理)データで主要16品目の7月時点の店頭価格を調べると、3割にあたる5品目が値上げ表明幅の下限にも届いていなかった。賃上げの鈍さから家計の購買力が上がらず、値上げの受け入れに時間を要している。多くの企業がひしめく食品業界の過当競争も足かせとなっている。ナウキャスト(東京・千代田)が1~5月に値上げのあった食料品16品目の動向

深まる分断、消える500兆円 逆回転するグローバル化 – 日本経済新聞

2月24日のロシアのウクライナ侵攻から半年たち、国際社会の風景は様変わりした。民主と強権という国家観の隔たりがあらわになり、経済・政治の両面で分断が進む。「ウクライナ」後の世界はどこへ向かうのか。7月下旬。直前まで日本にいたイエレン米財務長官が韓国ソウルのLGグループの施設にいた。強調したのは「フレンドショアリング」の発想。「信頼できるパートナーと深く多様な関係を築き、供給網を多様にし、互いの

【詳細データテスト】ポルシェ911 ハンドリングが向上 標準サスなら乗り心地は満足 遮音は要改善(AUTOCAR JAPAN) | 自動車情報サイト【新車・中古車】 – carview! – carview!

はじめに1974年以来、ポルシェ911ターボの特徴は過給フラット6ユニットだった。ところが2016年、GT3を除くすべての911がターボエンジンを搭載した。ターボは911ターボだけのものではなくなったのだ。言い換えれば、孤高の存在から、91…

23年1月、車検証電子化。車検証情報をアプリで確認 – Impress Watch

国土交通省は、2023年1月4日から車検証を電子化するにあたり、周知用の「電子車検証特設サイト」を公開した。

中国四川省、工場の電力供給制限を延長-トヨタなどへの逆風強まる – ブルームバーグ

中国四川省は21日、「極めて顕著な」電力不足に対応するため、工業向け電力の供給制限措置を延長し、最高レベルの緊急対策を発動した。工場の操業停止を余儀なくされている同省の製造業には、厳しい日々が続く。

「貧乏節約」と「金持ち節約」どこが違う? – Yahoo!ファイナンス

「節約」するなら豊かな気持ちを持つことが大切節約というと、家計が苦しい人だけが取り組むと思われがちですが、実は豊かな人こそ「お金を無駄に使わない」ことを徹底しています。そうでないと豊かさを持続できないと知っているからでしょう。節約に取り組む時に注意が必要なのは「考え方」です。「考…

<爆発的人気で完売店続出!>“日傘男子御用達” ライトで丈夫な「アウトドアブランドの最新日傘」の進化がスゴイ件【低山小道具&技術研究所 vol.16】|概要|登山|低山小道具&技術研究所|BRAVO MOUNTAIN – BRAVO MOUNTAIN

驚くほど早い梅雨明け、さらには猛烈な暑さが続き、“日傘男子”が話題になっている今年の夏は、アウトドアブランドの日傘が爆発的に売れているそうです。灼熱の林道や、遮る物がなく紫外線の強い稜線を歩く登山シーンでは、晴れの日に傘を差しているハイカ…

57歳会社員、貯金1600万円。定年まで2年半ですが、ストレスで早期退職したいと考えています – Yahoo!ファイナンス

退職したら、お金は足りるのか、生活できるのか……年金も少なくなるので心配です皆さんから寄せられた家計の悩みにお答えする、その名も「マネープランクリニック」。今回のご相談者は、仕事のストレスがあり、早期退職をしたいと考えている57歳の会社員女性です。ファイナンシャル・プランナーの深…

VWの新型「ポロ」は「ゴルフ」にどこまで近づいた?(@DIME) | 自動車情報サイト【新車・中古車】 – carview! – carview!

■連載/金子浩久のEクルマ、Aクルマ フォルクスワーゲン「ポロ」にマイナーチェンジが施された。全長が10~25mm延びたほか、新しいラジエーターグリルとLEDマトリックス化されたヘッドライト類がルックスを引き締めている。内容として最も大きな…

製品試作は2年後! ホンダの最優先策「全固体電池」は本当にEV普及の起爆剤となりえるか – Merkmal

電気自動車の普及に欠かせない。車両本体の高性能化および高効率化。その決定版となる技術革新として、ホンダが実用化に向け取り組んでいるのが「全固体電池」だ。その特長に迫る。

ポルシェ新型911GT3 RS 価格は – Au Webポータル

au Webポータル