プログラミングを学んでいる

フリーランスなエンジニア女子(34歳だけど)を目指して独学中。RubyとRails中心。学習過程の自分用メモ。土日は子供とべったりなので、こちらはおやすみです。

80日目◆アプリ作成中 その2 has_manyとbelongs_to

はじめましての方へ▼

Twitterではここにいます▼

https://twitter.com/natsumi_m_723 

========== 

 

体調崩したり、人生の中でも有数のドタバタがあったり笑、

そんな言い訳で1週間近く空いてしまいました!!

 

引き続き、アプリ制作の記録です。 

 

・データモデルの修正、追加

▼こちらを参考にさせていただきました!

[初心者向け] Railsで関連するデータ(親子関係)を保存する方法あれこれ 

 

▼今日は2つのデータモデルを追加。

 

rails g model Recipient name:string user:references

rails g model Gift content:text pitcure:string

 

(不要なモデルを削除したいけど大混乱になるのは怖いので、それは後日。笑)

 

Railsチュートリアルをやった方ならわかると思うのですが、

チュートリアルではTwitterによく似たサンプルアプリを作成します。

私が作りたいのは、贈り物管理アプリなのですが

サンプルアプリとの違いのひとつは、

 

・サンプルアプリの場合

user - micropost の親子関係

 

・贈り物管理アプリの場合

user - recipient - gift の2段階・孫関係(?)。

厳密には、

user - recipient は 1対他(has_many)

recipient -user は 1対1 (belongs_to)

 

recipient - gift は 1対他(has_many)

gift - recipient は 1対1 (belongs_to)

 

の関係性。

表にするとシンプルだけど、文字で書くとものすごいわかりにくいですね…。。

 

 

user同士を繋げる(follower-followingの関係)は今のところ作らないつもりなので、

そこもサンプルアプリとは異なるけど、

データベース関係で一番大きい違いは上記の点かな。

 

なので、このアレンジを自分で頑張らねば(ググらねば)いけない!

Railsチュートリアル

第7章(ユーザーモデル)・第13章(マイクロポストモデル)と、

[初心者向け] Railsで関連するデータ(親子関係)を保存する方法あれこれ

を参考にしながら

belongs_toとhas_manyでそれぞれをつなげていきました。

 

testもちゃんと作りたいけど(途中まではつくった)、

今までのアプリの内容と齟齬が出てきたので今回は捨てようかな…!

 

ひとまずコンソールでuser、recipient、giftの作成はできた。

でもsaveがうまくいかない!笑。

 

 

次にやることは、

1)viewを整える(HTML、CSS、ルートの再設定)

2)Userアイコンを3Sで保存・アップデートできるようにする

3)Recipientのアイコンを選べるようにする(何個か準備したい)

4)herokuのエラーを解消する(これが一番最初では…?)

 

あといっぱいあると思うけど、ひとつずつやってみます…!