リアルタイムで閃いた。笑 PAY.JP導入準備。チームメンバーのコード改善。【サプライズ神回】
こんにちは、
初めましてMasaです。
今回記事を書いてる途中でアイデアを閃いて
貴重な修正する過程を残せたので
楽しんでいただけるかなと思います。
最後まで読んでいただけたら幸いです^^/
今日はクレジットカード決済を実現させるために
PAY.JPの導入に取り掛かりました。
まずはマークアップから
■本家
■今回作成したもの↓
いい感じでできたんじゃないかなと思いっています。
楽しかった点
・今回自分なりに楽しかったなと思うところは
selectのプルダウンメニューの改善です。
チームのメンバーの一人が以前作成してくれた
selectのプルダウンメニューは
上記のコードで「おお〜」って思いましたが
実際に表示される桁数が01から表示されていないという問題がありました。
おそらく期待している挙動としては
[01.02.03.04.05.06.07.08.09.10.11.12]
だと思うのですが
表示される表示は
[1.2.3.4.5.6.7.8.9.10.11.12]
このように桁数が省略されていました。
別にこのままでの問題ないかなーと思いましたが
ちょうど僕が実現したかった処理が
↑こちらのコード。
記事:https://qiita.com/takachan_coding/items/f7e70794b9ca03b559dd
本家も01からカウントされててせっかくなら動的な動きも完コピしたいな。。
ということで
修正を加えてみたコードがこちらになります。↓
桁数の0埋めは初めてのことで困惑しましたが
何とか実現させることができました。
ですが・・・
画像下の
こちらのコードに関して今だにモヤモヤしているのは
べた書きで
19..29と書いてしまっていることです。
というのも
2020年になったらどうするの?問題です。
明らかに時間の変化に弱いコードになってしまっていますね・・・^^;
調べて
ここまで辿りつきましたが
その先にどうしたらいいのか・・・
というところでいきず増しました。
その時に頭の中でぐるぐるした考えとして
・年を取得する処理を コントローラに書こうか
・モデルに書こうか
・そういえばモデルとビューの関係性ってどんな関係だっけ?
・モデルで定義した変数ってviewで使えるっけ?
あ、今書いてて思いついたことが一つ出たのでやって見ます。
コントローラーで処理の返り値として
現在の年を取得して10を加えてたものを配列として吐き出させて
@arrayとしてインスタンス変数にしてそれをviewでeachで回してみます
やって見ます!!
・
・
・
できました笑
(まじでやってました笑)
今書いたコードはこちら!
■コントローラー
■view
感動。。
まさか記事で振り返りしてる時に
思いつくとは^^;
(記事書いててよかった)
今回のコードで2099年までは何とか耐えれそうです笑
補修性、変化に強いコードを書くというのは
最近自分の中で大切にしていることなので今回それを実現できてよかったです。
本日の勉強時間11時間。
長くなってしまいましたが、
最後まで読んでいただきありがとうございました。
今回お世話になった記事一覧:
http://cameong.hatenablog.com/entry/20120806/1344271504
https://qiita.com/takachan_coding/items/f7e70794b9ca03b559dd