プラクティス「Sinatra を使ってWebアプリケーションの基本を理解する」の課題提出用のリポジトリです。
課題のメモアプリを作成しましたので、ご確認お願いします。
- Ruby 3.2.2+
参考記事を参考に、postgreSQLをインストールする
postgreSQLをインストール後、ターミナルで下記コマンドを実行し、ユーザーmemo
を作成する。
createuser -P memo
このコマンドを実行後、パスワード設定のプロンプトが表示されるので、パスワードをpass
で設定する。
Enter password for new role: pass #このpassはターミナルで表示されない
Enter it again: pass #もう一度passを入力
データベースにアクセスする。
sudo -u postgres psql
ユーザー名がmemo
でデータベースdb_memo
を作成する。
また、エンコーディングはUTF8
を指定する。
postgres=# CREATE DATABASE db_memo WITH OWNER memo ENCODING 'UTF8' TEMPLATE template0;
db_memo
のデータベースに移動する。
postgres=# \c db_memo
テーブルmemos
を作成する。
db_memo=# CREATE TABLE Memos (
id VARCHAR PRIMARY KEY,
title VARCHAR NOT NULL,
content VARCHAR NOT NULL,
UNIQUE (id)
);
ユーザーmemo
がテーブルmemos
に対して削除、更新、追加ができるように権限を付与する。
db_memo=# GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE memos TO memo;
以上でDBの環境設定は完了。
- 作業PCの任意の作業ディレクトリで
git clone
をしてください。
$ git clone -b db https://github.com/自分のアカウント名/memo_app.git
memo_app
ディレクトリが作成されますので、memo_app
ディレクトリに移動してください。
$ cd memo_app/
- Bundlerのインストールしてください。
$ gem install bundler
- gemをインストールしてください。
$ bundle install --path vendor/bundle
- メモアプリを起動してください。
$ bundle exec ruby main.rb
※起動した際、下記が表示されますが、何もせずそのまま次の作業に移ってください。
== Sinatra (v3.1.0) has taken the stage on 4567 for development with backup from Puma
Puma starting in single mode...
* Puma version: 6.4.0 (ruby 3.2.2-p53) ("The Eagle of Durango")
* Min threads: 0
* Max threads: 5
* Environment: development
* PID: 23744
* Listening on http://127.0.0.1:4567
* Listening on http://[::1]:4567
Use Ctrl-C to stop
# この画面には触れず手順8を行う
- ブラウザを開いて、メモアプリにアクセスしてください。
http://localhost:4567/memos
- アクセス出来たら、メモアプリが利用できます。