IMG_3525.jpg | 4 months ago | ||
IMG_3553.jpg | 4 months ago | ||
IMG_3560.jpg | 4 months ago | ||
IMG_3561.jpg | 4 months ago | ||
IMG_3562.jpg | 4 months ago | ||
IMG_3563.jpg | 4 months ago | ||
IMG_3564.jpg | 4 months ago | ||
IMG_3565.jpg | 4 months ago | ||
IMG_3566.jpg | 4 months ago | ||
IMG_3568.jpg | 4 months ago | ||
IMG_3571.jpg | 4 months ago | ||
README.md | 3 months ago |
「ファンファーム」のバックエンドリポジトリです。
Bundlerを使いGemfileに以下のGemを記載した
gem "sinatra" gem "sinatra-contrib" gem "sinatra-cross_origin" gem "rack-cors" gem "rackup" gem "puma" gem "sqlite3"
その後以下のコマンドでインストール
bundle install
ruby app.rb
デフォルトで http://localhost:4567 で起動
CORSが有効なので、フロントエンドとポートが違っても通信できる
テーブル名 | 内容 |
---|---|
recruitments | 農業施設による募集情報 |
applies | 学生による応募情報 |
matches | 募集と応募のマッチング記録 |
messages | マッチ間の掲示板メッセージ |
メソッド | エンドポイント | 説明 | リクエストボディ(JSON例) |
---|---|---|---|
GET | /api/ping | サーバーの疎通確認 | なし |
GET | /api/recruitments | 募集一覧の取得 | なし |
POST | /api/recruitments | 募集の新規登録 | { "username": "農業施設名", "address": "住所", "pow": "仕事内容", "conAd": "連絡先", "hw": "作業内容", "schedule": "スケジュール", "veg": "作物情報", "bucon": "その他" } |
GET | /api/applies | 応募一覧の取得 | なし |
POST | /api/applies | 応募の新規登録 | { "username": "学生名", "address": "住所", "conAd": "連絡先" } |
GET | /api/matches | マッチ一覧の取得 | なし |
POST | /api/matches | マッチの新規登録 | { "recruitment_id": "募集ID", "apply_id": "応募ID" } |
GET | /api/messages?match_id=マッチID | マッチの掲示板メッセージ一覧取得 | クエリパラメータにmatch_id必須 |
POST | /api/messages | 掲示板メッセージの投稿 | { "match_id": "マッチID", "user": "投稿者名", "content": "メッセージ内容" } |