suzukinpの忘備録

AWS/Linux/グルメ

AWSフルコース04月度(4週目)①

RaiseTech AWSフルコース4週目受講

今週は、Ruby on RailsCRUD処理、DBとSQLドメインモデル、外部ライブラリ等の説明。
このあたりからだんだん馴染みのない話になってゆく。。
ドメインというと「お名前.com」で取るような@以降の部分という認識だったけど、「業務の範囲」とか、「提供されるシステムの領域」等の意味があり、何をして何をしないか、を明確にするために重要なものだと学習した。(ドメインモデリング

GemやBundlerは、前回環境構築でつまずいて何度もコマンド打ったから体感的に分かった感じ。

今回の課題は、「Ruby on RailsCRUDのRead処理を実装。画面描画、DBと繋ぐのも含む。」

CRUD処理というと、最近読んでいる「Ruby on Rails5 速習実践ガイド」の、「Chapter3 タスク管理アプリケーション」が該当するので、この本を進めていく事にした。

Chpter3を進めていくと、Chapter3-3 ブラウザでhttp://localhost:3000にアクセスした段階でエラー。

f:id:suzukinp:20200512180436p:plain

調べてみると、下記URLと似た現象。
teratail.com

エラーの原因は、WindowsからUbuntu環境のファイル操作をしてしまったことだった。。
分かっている人は常識かもしれないけど、この本にはviコマンドで書き換えましょうとか一言も書いてなかったのにー!!
確かに最初、「Ubuntu環境のファイルはWindowsから操作しないようにしましょう。」と書いてあったけど、 章が進んでファイルを書き換える段階で、もう一度教えてほしかったな。。

Ubuntuをアンインストールして再インストールした方が良いという情報があったので、環境構築からもう一度やり直し、Ubuntu環境のファイルをviコマンドで修正すると、ブラウザに教科書通りの画面が表示された。

viコマンド
eng-entrance.com

viコマンドは慣れるとWindowsからファイル操作するよりずっと楽な事に気づいた。該当するディレクトリまで行かなくて良いから便利。テレビの前に行ってチャンネル変えてたけど、リモコンで変えるとテレビの前まで行かなくて良いみたいな。(例えが古い)

「3-1-7 Railsのエラーメッセージなどを日本語で出せるようにする」の箇所で下記コマンドを打つと、ja.ymlの中身が元のURLと同じものになっていない。

wget https://raw.githubusercontent.com/svenfunchs/rails-i18n/master/rails/locale/ja.yml --output-file=config/locales/ja.yml

下記URLと同じ様なエラーが出た。
qiita.com

下記コマンドを打つも解決せず。

chmod 660 ~/.wget-hsts

下記URLを参考に、-Pにコマンドを変えてみると解決した。
tiratom.hatenablog.com

wget https://raw.githubusercontent.com/svenfuchs/rails-i18n/master/rails/locale/ja.yml -P config/locales

自分で探して解決した時って、初歩的な事でも無性に嬉しい!!
開発関係?の事は特に、脳に与える報酬が半端ないと思う。
そうだったのかー!!!っていう。
大げさに言うと、ヘレン・ケラーがウオーター!!って叫んだ時みたいな感じ。

今回、環境構築を最初からやり直して分かったのが、「2-2-2 Windows(WSL)でrbenvをインストール」の時、Rubyのインストールの為に必要なパッケージを、直接入力しないでWikiからコピー&ペーストすれば良かったという事。
wikiからコピー&ペーストしたら、教科書に載っているのとは別の最新のパッケージ一式にテキストが変わっていた。

何度か試して初めて分かる事もあるなぁ。。

前にchocorateryでruby on rails環境を構築しようとして止めた時に、Windowsが不安定になったので初期化したのに比べたらまだ楽だから良かったかな。

基本のCRUD処理完成させるのも、初心者には結構大変。