HigaCoffee のデータベースプロジェクトのバックエンドです。 HigaCoffee ではコーヒーを題材にフロント開発・バックエンド開発・機械学習をやってみたい人を募集しています。
URL | Method | 説明 | 備考 |
---|---|---|---|
/ | GET | hello world | |
/ | POST | オウム返し | |
/coffees | GET | 条件にあうコーヒー取得 | |
/coffees | POST | コーヒー登録 | |
/reviews | GET | レビュー取得 | |
/reviews | POST | レビュー登録 | |
/auth/login | POST | ログイン | |
/auth/create_user | POST | ユーザー登録 | |
/beans | GET | 豆の種類取得 |
-
仮想環境作成
$ python -m venv venv
-
仮想環境有効化
$ source venv/bin/activate
-
パッケージインストール(requirements.txt から)
$ pip install -r requirements.txt
-
インストール済みのパッケージを requirements.txt に記載
pip freeze > requirements.txt
-
DB 作成
- データベースを作成し、URI を環境変数
DATABASE_URI
に保存
※ デフォルトでは higa という PostgreSQL の DB が使われる。この場合 PostgreSQL に higa という DB を作成する必要がある。
- データベースを作成し、URI を環境変数
-
マイグレーション
- (マイグレーションディレクトリ作成)
マイグレーション(DB 構造を models と自動で一致させる)するために必要。
ただしこのリポジトリではすでに存在しているため不要$ flask db init
- マイグレーションファイル作成
「DB 構造をこう変えてくださいね」っていうファイルができる(=マイグレーションファイル)$ flask db migrate
- マイグレーション実行
マイグレーションファイルに基づいて DB 構造が変更される。$ flask db upgrade
- (マイグレーションディレクトリ作成)
-
.env.sampleを参考に.env ファイルを作成。
-
ローカルサーバ立ち上げ
$ python run.py
-
テスト DB 作成。
-
URI を環境変数
TEST_DATABASE_URI
に保存
※ デフォルトでは higa_test という PostgreSQL の DB が使われる。この場合 PostgreSQL に higa_test という DB を作成する必要がある。 -
テスト実行
$ pytest
test_*.py
がすべて実行される。
※base.pyに記載の処理が test メソッドのたびに行われる。