Pythonで本を管理するWEBアプリを作る

その他

前回Pythonでスクレイピングするアプリケーションを自作してみましたが、今回も何か作ってみたいと思い、新しいWEBアプリケーション作成に着手しました。

コンセプト

例えば会社に本棚があったとします。ざっと2000冊ほどあります。しかしながら、本は管理されておず、どのような本があるのか、だれが借りているのか分からない状況です。

とういう前提で、本を管理するWEBアプリケーションを作成してみたいと思います。

以下を要件とします。

  • 本を検索できる
  • 誰がその本を借りているのかわかる

技術

  • WEBサーバーとしてPythonのbottleを利用
  • AjaxSPA(jQuery )
  • MySQL

成果物

工数は、なんやかんやで5人日程度でした。

簡単な説明動画も作ってみました。

Bookshelf
TOP画面
貸出ボタン押下時
返却ボタン押下時
バリデーションチェック
情報ボタン押下時のモーダルダイアログ

こだわりポイント➀

アイコンの選定

様々なサイトからフリー素材の画像を探しだし、画像を加工するサイトで色やサイズを加工しました。これらのアイコンを設置するだけで、本物のサイト感が出てきますね。

タイトル
検索
情報
貸出中
貸出可能
本のURL

こだわりポイント➁

検索結果一覧の下段に新規に入荷された本やオススメの本を表示するコーナーを作りました。

追加したい機能

  • 本の名前を検索時、複数条件でのOR検索
  • 本のカテゴリで検索
  • 貸出済/未貸出で検索
  • 本を貸出時に本人確認用のパスワードを入力させ、返却時にパスワードを入力させて本人確認を行う
  • 返却期限に近づいたらメールでお知らせする
  • 次に借りたい本として予約でき、返却されたらメールでお知らせする
  • 管理者画面の作成

挙げだしたら、いろいろやりたくなるので次に追加するとしたら上記のような機能でしょうか。

躓きポイント

  • webサーバー側とクライアントと情報を渡すためにjsonを利用していますが、DBから情報をSelectし、Json形式に変換するロジックが分からなかった。
  • モーダルダイアログのボタン押下時の情報取得に苦戦した。

jQueryもPythonもほぼほぼ初学者で何が正解か分からないためとりあえずgoogle先生を活用し、動かしてみて、ああ、動いたなという感じで実装しています。

美しいコーディングは後々学ぶとして、初学者は実際にコーディングして、動かしながら学ぶのも良いと個人的には思います。

とてもキレなコードとは言えませ(bugもあります)が、githubのリンクも置いておきます。

コメント

タイトルとURLをコピーしました