Skip to content

Commit

Permalink
後編を章立てにする
Browse files Browse the repository at this point in the history
  • Loading branch information
sukechannnn committed Dec 28, 2017
1 parent a2ad3eb commit 46bf7b3
Showing 1 changed file with 10 additions and 8 deletions.
18 changes: 10 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,11 +101,13 @@ Pull Requestを作る際には、以下の画像を参考にして Base Reposito
![base_repository](https://github.com/feedforce/e-navigator/wiki/images/base_repository.jpeg)

## 後編
後編はちょっと長いので、章立てにしてあります。
後編の全てを1つのプルリクエストにすると非常に長いので、各章または各節で個別にプルリクエストを作ってください。それでも長いと感じたら、自分のタイミングでプルリクエストを作って頂いても大丈夫です。作って頂いたプルリクエスト単位でレビューとアドバイスをしますので、気軽に言ってください。ここからは一緒に進めていきましょう!

### 自分の面談日程の表示・登録・編集・削除機能
### 第1章 自分の面談日程の表示・登録・編集・削除機能
まずは自分の面接を表示・登録・編集・削除できるようにしていきましょう!

#### 面接日程を表示・登録できるようにする
#### 第1節 面接日程を表示・登録できるようにする
面接日程を登録するためにはその情報をDBに保存する必要があります。
そのために、まずはモデルを作りましょう。モデル名は何でも良いですが、ここでは`Interview`モデルとします。`Interview`モデルは`User`モデルに対して1対多でリレーションを貼ってください。

Expand All @@ -117,32 +119,32 @@ Pull Requestを作る際には、以下の画像を参考にして Base Reposito

一覧で表示できるようになっても、まだデータを登録していないので表示する内容がありません。そこで、面接日程を登録できるようにしていきます。`InterviewsController#new`で面接日程を登録するための画面を表示し、`InterviewsController#create`で面接日程を登録できるようにしましょう!

#### 面接日程を編集・削除できるようにする
#### 第2節 面接日程を編集・削除できるようにする
面接日程の表示・登録ができるようになったら、次は編集と削除をできるようにします。

`InterviewsController#edit`で面接日程を編集するためのページを表示します。そして、`InterviewsController#update`で面接日程の編集を反映できるようにします。
最後に、`InterviewsController#destroy`で一度保存した面接日程を削除できるようにしましょう。

面接日程のCRUD操作(表示・登録・編集・削除)ができるようになったら次に進みましょう!

### 面接官が面談日程を承認 or 拒否するための機能
### 第2章 面接官が面談日程を承認 or 拒否するための機能
次は面接日程の可否を判断する面接官のための機能です。改めて新しいアカウントで登録し、つづきを実装していきましょう!

#### 自分以外のユーザーの一覧をトップページに表示する
#### 第1節 自分以外のユーザーの一覧をトップページに表示する

まずは、自分以外の全てのユーザーの一覧をトップページに表示してください。そこに名前やメールアドレスなどのユーザー情報も表示しておきましょう。ここに、他の人の面接一覧を表示するページへのリンクを追加します。(もちろん自分以外のユーザーの面接日程が必要です。あらかじめアカウントを2つ以上登録しておきましょう)

#### 面接官用の面接日程一覧ページを作る
#### 第2節 面接官用の面接日程一覧ページを作る
自分の面接日程は登録や編集ができる必要がありましたが、面接官が面接日程を見る際には「面接はこの日に決定!」という風に、面接日程を指定できる必要があります。そうすると、同じ面接日程の一覧ページでも表示したい内容が異なりますね。

そこで、自分以外の面接日程の一覧を`InterviewsController#index`で表示した際には、どの面接日程で面接を行うのかを選択できるようにしたいです。(ここは説明が難しいのでサンプルアプリを見てみてください)

表示内容を出し分けるにはパーシャルを使うと良いです。また、コントローラーを分けてしまうという手もあります。やりやすい方法で実装してみてください。

#### 面談日程を承認or拒否できるようにする
#### 第3節 面談日程を承認or拒否できるようにする
面接日程を選択したら、その日がその日が面接日であることを保存してください。また、他の日が面接日程でないことも同様に保存できるようにしてください。

### 面談日程を知らせるためのメール送信機能
### 第3章 面談日程を知らせるためのメール送信機能
面接日程を登録する場合も、それを承認する場合も、登録したことや承認したことを知らせる必要があります。ここではメールを使ってリマインドができるようにしましょう!

メールの送信はActionMailerとGmailを使うことで無料で実装することができます(ここでは送信だけで大丈夫です)。メールの文面は、面接官に送信する場合と自分に送信する場合とで分けてください。
Expand Down

0 comments on commit 46bf7b3

Please sign in to comment.