Pythonで行こう! 〜ごにょごにょ編〜
そこまで!
煮詰まっていたような、ないような感じだったので、久しく更新をしていなかったFlaskベースの「書庫管理アプリ」を見てみようと思ったわけです。
大昔は、LibreOfficeのみで管理をしていたものを、TurboGears(今のPylons)ベースに変更をして、そこからFlaskへシフトしたという経緯があります。ほんと、今でこそ、って感じな訳なんですけどね。
閲覧するだけの代物かしら、と思っていたら、更新機能を作り込んでいて、自分に、びっくり!(笑)
構成要素
- Python 3.7
- Flask
- SQLite3
- Genshi
- jQuery and Others
SQLite3は、すっぴんで使用。SQLAlchemyでラッピングもありなんでしょうが、まあ、すっぴんでいいかな、と。Genshiは、テンプレートエンジンで、デフォルトだと、Jinja2。(確か、一時、Makoを使ってましたかね)Genshiにした理由は、HTML内でのCodeの有り様が自分の肌に合ったから、ということでしょうか。
新規
微調整をしたら、先のアプリは、それなりに動いたので、新規で一つ作ろうかな、と。要素列も10に満たないので、テーブル1つでいいだろうから、即決して、作業を始める。
結局のところ
いつものように、というか。一番時間がかかったのは、元となるDataの作成と微調整。それさえも、自動にできれば、そりゃぁ、楽だけど、大元の検索ワード自体は、与えないとダメ、かつ、多言語の扱いもあるので、そりゃ大変(笑)(否、考える価値はあるんだろうな、これは。。。)
当初
Juliaで作り直そうかと思って、あれこれやってたんだけど、Version問題で、動かないものがゴロゴロしてて、上のように、ササッといきたいのに、その負担は負えないな、という判断で、Flaskになったという顛末です。
欲張る
アプリと言っても、HTMLでTable表示をしているだけのもので、そこに、Javascriptでもって、SortやFilterを使用していたのです。「table.js」ってやつを使ってたのですが、気分転換的に、別のもいいかな、と、探すことにしました。
「20 Best jQuery Filter and Sort Plugins」にあるものや、「FooTable」なんかも、いい感じで。
でもって、最終的に選択をしたのは、「これ」でした。Excelでいうところの、Auto-Filterが一番似てるのがポイントでした。
コメント
コメントを投稿