質問: 現在、Pythonを勉強し始めて1年弱のものです。最近、研究室内で、その専攻科目柄、統計解析などを多く用いるためPythonを導入し始めました。分析のみに用いるだけでしたらPythonのみでなんの問題もなかったのですが、研究室内のデータのやり取りが非常に面倒だったことから、研究室内のサーバにMysqlデータベースを入れ、そこで一元管理しようと考えました。そこで、そのデータを取り出す上でのインターフェース、フロントサイド作りに何を用いようかと考えていたところ、Pythonで動くwebサーバのフレームワークにDjangoというものがあることを知りました。更に、それの拡張版?フルスタックCMSと記載のあるMezzanineなるものを発見しました。さて、ここで、どちらを導入すべきなのじゃ迷ったのですが、不幸なことに、まだどちらもあまり日本で流行っていないのか、英語で書かれたものばかりでさっぱり検討ができない状態です。そこで、どちらを用いたほうが良いのか意見を聞きたいと思い投稿させていただきました。 参考までに、以下に考慮すべきポイントと、知りたいポイントを書かせていただきます。 ○考慮ポイント ・Mysqlデータベースとの関連が簡単であること ・初心者でも直感的にわかりやすいもの。 ・今後研究とは別にブログ記事などを書くことも想定して選択したい。 ○知りたいポイント ・DjangoとMezzanineの違い。 ・両者のメリット、デメリット よろしくお願いいたします。
回答: DjangoはPythonのフレームワークであり、MezzanineはDjangoフレームワークを用いてCMSを作るプラットフォームとなり別のレイヤーに属するものです。 ですので、メリットデメリットとしてはDjangoは自分で全部作らなければいけない&自由に作れる、Mezzanineはその逆になります。 ブログ投稿やデータの閲覧なども標準でインターフェースが用意されているためその用途でしたらMezzanineを利用スべきだと思います。 Mezzanineの日本語翻訳ドキュメントも用意されているので調べてみてください。 また、これは補足ですが ・研究室内でのみ利用するデータのやり取りをしたい ・外部公開するブログを作成したい と言った条件ですと、分析データをブログに利用する場合以外はデータベースやインターフェースを分けるべきなので、 二つのアプリケーションを作成するべきだと思いますので導入する際に必要な物を改めて洗い出してみてください。