PyramidでToDo管理サービスを作る 【プロジェクト作成】

実行環境

GitHubにプロジェクトを作る

右上にある「+」マークからリポジトリを作る。 プロジェクト名は読んで字の如く「ToDoManager」とでもしておこう。 説明は省略して練習も兼ねてるのでライセンスは取り敢えず「MIT License」にでもしておくかな。

出来上がったリポジトリgithub.com

作ったリポジトリをクローンする

GitHub for Windowsを使ってリポジトリを適当な場所にクローンする。

プロジェクトの作成からサーバの起動

  1. scaffoldを使ってプロジェクトを作成

     (pyramid_python)> pcreate -s starter ToDoManager
    

    ココらへんは他のウェブフレームワークと大差ない感じ。
    実行するといろんなファイルが作成される。ディレクトリ構成としてはこんな感じ。

     E:.
     │  .gitignore
     │  CHANGES.txt
     │  development.ini
     │  LICENSE
     │  MANIFEST.in
     │  production.ini
     │  README.md
     │  README.txt
     │  setup.py
     │
     └─todomanager
         │  tests.py
         │  views.py
         │  __init__.py
         │
         ├─static
         │      pyramid-16x16.png
         │      pyramid.png
         │      theme.css
         │      theme.min.css
         │
         ├─templates
         │      mytemplate.pt
         │
         └─__pycache__
    
  2. GitHubにプッシュ

    GitHubから一度クローンしたのもあって、READMEファイルがダブってるためscaffoldで生成されたREADME.txtの方を削除する。 この状態のプロジェクトを一度コミットする。コミット先はひとまずmasterブランチ。
    そしてGitHubにプッシュする。

  3. 作成したプロジェクトを実行

    実行するためには、作成したプロジェクトを仮想環境上にインストールする必要があると。
    以下のコマンドを入力してセットアップする。

     (pyramid_python)> python setup.py develop
    

    うぐぅ……README.txtを削除したことによりエラーが発生。
    setup.pyの該当部分を修正する。

     with open(os.path.join(here, 'README.txt')) as f:
                                          ↓
     with open(os.path.join(here, 'README.md'), encoding='utf-8') as f:
    

    ファイルの拡張子を変更して、明示的に文字コードを指定。
    修正したファイルを再度GitHubにプッシュする。
    気を取り直して再度セットアップコマンドを実行すると問題なく完了。

    起動するには以下のコマンドを入力する。

     (pyramid_python)> pserve development.ini
    

    実行すると以下の様なログが出力されて起動する。

     Starting server in PID 7772.
     serving on http://0.0.0.0:6543
    

    ブラウザで「http://localhost:6543」にアクセスするとこんな感じの画面が表示される。

f:id:neoinal:20150806233253p:plain

今日はここまで。 あんまり進まないな……。