LoginSignup
0
0

More than 3 years have passed since last update.

個人アプリの制作日記

Last updated at Posted at 2020-05-19

本日の積み上げ
①個人アプリの構想
②DB設計

①個人アプリの構想

■ 個人アプリ名:スタサポ <= 突っ込まれるかも

■ どんなアプリか
ユーザーがメンターさんにわからないところをすぐに聞けるマッチングアプリ

 ▶ 手立て
 質問したいときに質問フォーマットにそってユーザーがメンターさんにビデオ通話を申し込む。
 グループチャットを通じて勉強し合う。
 ユーザーやメンター評価を搭載している。
 自分の学びをアウトプットがすることができる。

 ▶ 経緯
 昨今はコロナウィルスの影響でオンライン学習が増えている。が動画だけの学習だと受け身になりがちで質問
 したいところが聞けない。
 1対1のビデオチャットなら好きな質問ができると考えた。
 某スクールの学びを通して、わからないところだけ聞く自分がわかっていることを
 遠慮なく聞けるサービスに感動から。

 ▶ ユーザー側のメリット
 周りに気にしないで、わからないところだけ聞きたい。
 動画では整理されていて分かりやすいが、その場の疑問が解決しずらい。
 自分がどこまで分かっているのアウトプットしながら確認ができる。
 自宅で簡単に取り組むことができる。
 コメントや評価を通じて自分の理解度を可視化でき、承認欲求が満たされる。

 ▶メンター視点でのメリット
 隙間時間に行うことができる。
 教えることに携わりたい人が気軽な気持ちでできる。(その場にいればよい)
 その人だけに教えることができる。
 誰かに知識を伝える・教えること一番のアウトプット。

 ▶実装したいこと
 ビデオ通話での応答
 コメント機能
 ログイン機能(メンター・生徒)
 評価機能(メンター・生徒)
 応答可能かどうか
 質問フォーム
 非同期通信(ビデオ通話、メッセージ)
 今日の積み上げページ(アウトプット)

■開発環境
rails 5.0.7.2
ruby 2.5.1
gem device

② DB設計

usersテーブル
Column Type Options
name string null: false, unique: true
email string null: false, unique: true
password string null: false
my-image string

introduction text

profile text

subject string

rate float

Association
has_many :groups_users
has_many :groups, through: :user_groups
has_many :messages
has_many :tweets
has_many :teaches
groupsテーブル
Column Type Options
name string null: false, unique: true
Association
has_many :user_groups
has_many :users, through: :user_groups
has_many :messages
user_groupsテーブル
Column Type Options
group_id integer null: false, foreign_key: true
user_id integer null: false, foreign_key: true
Association
belongs_to :group
belongs_to :user
groupmessagesテーブル
Column Type Options
comment text null: false
image string

group_id integer null: false, foreign_key: true
user_id integer null: false, foreign_key: true
Association
belongs_to :group
belongs_to :user
Tweetsテーブル
Column Type Options
title string null: false
body text null: false
image string

user_id integer null: false, foreign_key: true
Association
belongs_to :user
tweetmessagesテーブル
Column Type Options
comment text null: false
image string

tweet_id integer null: false, foreign_key: true
user_id integer null: false, foreign_key: true
Association
belongs_to :tweet
belongs_to :user
teachテーブル
Column Type Options
title string

image string

body text

user_id integer null: false, foreign_key: true
Association
has_many :teach_tags
has_many :tags, through: :teach_tags
teach_tagsテーブル
Column Type Options
title string

image string

teach_id integer null: false, foreign_key: true
tag_id integer null: false, foreign_key: true
Association
belongs_to : teach
belongs_to :tag
tegsテーブル
Column Type Options
text string

Association
has_many :teach_tags
has_many :teaches, through: :teach_tags

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0