Day 4 ユーザのBMIグラフ化

#resources :usersから生成されるURLに.が入ってしまう問題
昨日の終わりから発生し始めたが、例えばRailsが用意してくれた、edit_user_path（PATCH）をリクエストすると、アクセスされるのが本来であれば/users/1となるはずなのに、/users.1となってしまいルーティングエラーになってしまう。
同様の症状は、@userをパスとして使うときも発生していて、例えばredirect_to @userでURL users/:idを呼ぶ時も「.」が入ってしまう状態になっている。
つまり、Railsが用意したパスのうち:idをもつURLにリンクする省略された形、（@userや〜path)などを使うときにこの問題は起きてしまっているようである。
とりあえず、遷移するときのパスでparams[:id]を変数展開させて指定したりすることで修正は行った。
<img width="597" alt="スクリーンショット 2020-01-13 15.13.16.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565105/a4e1ed2b-eee8-ddd6-16f2-13090d867459.png">
↑本来であれば、パスを指定することは不要だが、この問題が起きてしまうため、パスを具体的に明示している。
<img width="470" alt="スクリーンショット 2020-01-13 15.15.31.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565105/2a786fae-69fb-8196-e039-cf81313ef59d.png">
↑redirect_to @userがベストだが、ここでもパスを明示させている。

**追記！！**
どうやらパスヘルパーのエラーだったらしく、resources :usersと複数形にしているため/が.になってしまうらしい。試しにresources :userと単数系にしたら「.」がなくなり、正常なURLが生成されるようになった！！！
http://iroiroblog.com/rails-path-helper/
**追記２**
たしかに正常なURLが生成されるが、今度はアクションが単数になってしまいそれも問題となることがわかった。とりあえずパスヘルパーを使わない方向で進めようと思う。
#プロフィール更新リンクをホームに移行
プロフィール更新は、ユーザ個人の詳細ページにおいておいたため、URLからparams[:id]で取得することができていた。しかし、今回、ホームにプロフィール編集ページへのリンクを設置したかったが、ホームにはあいにくユーザのIDがURLに含まれておらず、show.htmlのプロフィールリンクをそのまま写すと以下のようなエラーになってしまう。
<img width="1047" alt="スクリーンショット 2020-01-13 18.13.10.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565105/2b93c871-6ad0-bb70-2881-e96075a0694d.png">
そのため、ホーム画面ではリンク先のURLをパスヘルパーが生成したものではなく、current_userからIDを取得して、IDを明示させた。(下画像では、paramsからIDを取得しているため、ホームでは取得できませんとエラーが出る。）
<img width="1043" alt="スクリーンショット 2020-01-13 18.18.51.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565105/8616aaeb-a385-cdea-0d94-ca2673a6c4ea.png">
↓
<img width="1087" alt="スクリーンショット 2020-01-13 18.26.58.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565105/0b5e2a13-5e8e-fedc-5482-008d38060486.png">
こうすればURLのIDに依存せずURLを取得できるため、無事に遷移できた。
#BMIを表示するグラフを構成するデータモデル
やりたいこととしては、ユーザが日付と、体重を入力して送信すると、登録された身長からBMIが求められ、それを元にグラフ化して表示・記録ということがしたい。
データとしてはまず、体重が必要で、一日ごとにどんどん更新される、また前のデータも保持する必要があるので積み重なっていく。そう考えると、Userモデルにある体重コラムを使うよりは、Weightモデルを作成して、Userモデルと多対一の関係にした方が扱いやすいのではないだろうか。

また、そのモデルにはDate型の日付が格納できるコラムも入れておきたい。
つまり、必要なのは体重と日付をコラムにするモデルで、それをUserテーブルと関連づけることである。
#Chartkickを利用できない
グラフを作成するためにChartkickというgemを利用することにしたが、Loadingとずっと表示されるか、ライブラリが見つからないと出て読み込みができない。とりあえず解決するためにいろいろ調べて学んだ情報を書いておく。<img width="1317" alt="スクリーンショット 2020-01-13 23.09.56.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565105/a383c625-cb63-21a2-7ff8-f0565edcec57.png">
・コマンドRails.application.config.assets.precompile += %w( chartkick.js )
（config/initializers/assets.rb）は、javascript直下にないjsファイルをプリコンパイルするときに指定するコマンド。直下にあるものは書く必要がない。
・アセットパイプラインについて
https://www.transnet.ne.jp/2016/02/28/rails%E5%88%9D%E5%AD%A6%E8%80%85%E3%81%8C%E3%81%A4%E3%81%BE%E3%81%9A%E3%81%8Dcolnr%E3%80%8C%E3%82%A2%E3%82%BB%E3%83%83%E3%83%88%E3%83%91%E3%82%A4%E3%83%97%E3%83%A9%E3%82%A4%E3%83%B3/
正直JavascriptやJqueryとかはよくわかっていない・・・。
#課題
グラフ化がどうしてもできない。
コントローラモデルの考え方
このモデルにはこのコントローラが適しているなど
application js等JSの流れ
<img width="894" alt="スクリーンショット 2020-01-13 21.07.04.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565105/4efa8a34-07db-d47f-7dd6-023e253b39ab.png">