【13日目】初めてのエラー
9月2日はUdemyのこちらの教材を使用して、フレームワークの勉強
https://www.udemy.com/sinatra_rails/learn/lecture/5316772?start=360#questions
これまではドットインストールを使用して言語記法基礎学習でしたが、今回はwebサービスの仕組みについて学びます
へーこうやってページが表示されるのかぁなどと思っていましたがしかし。
ec2-user:~/environment $ bundle exec rake db:migrate
DEPRECATION WARNING: Setting `ActiveRecord::Base.configurations` with `[]=` is deprecated. Use `ActiveRecord::Base.configurations=` directly to set the configurations instead. (called from <top (required)> at /home/ec2-user/environment/app.rb:6)
rake aborted!
Your version of SQLite (3.7.17) is too old. Active Record supports SQLite >= 3.8.
うーん??
これが噂に聞くエラー先生というやつだろうか。
前段については単に非推奨とあるので、app.rbの6行目で?よくないことをしているらしいがエラー本体ではないのかな、など。書き方がよくないようだ。それは書き方を直せば良いのかと想像がつくが、わからないのは後段のほう。
SQLiteのバージョンが古すぎるので更新が必要とのこと。動画ではこのまま進んでいるので、公開当初は問題なかったが、動画は修正されていないようだ。
バージョンが古いらしいので、今入ってるのを更新するか、削除して入れ直せばいいんだろうと思いだったのだが、gemのsqlite3というのはいれた記憶があるけど、それはプログラムの部品みたいなものだよなと。
動画内ではSQLiteが何かの説明はないのだが、調べてみるとデータベース自体のことらしい。しかしそんなものを入れた記憶がないから、何か別のものにくっついて提供されているのだろうか。
ひとまずネットでSQLite インストールとか色々調べてみるが、うまくいかない。
そもそもSQLite、SQLite3、sqlite3と似ているが異なるものがあるし、それぞれ違うバージョンが出てくる。
そこでとりあえずこの警告文まるごと検索してみるのだが、解決策が見つからない。
一応下記の記事が一番近いような気がするのだが、真似してみたところうまくいかなかった。https://qiita.com/kai_kou/items/c18b68a7916251231f6d
むしろ解決するどころかなんとsuもsudo suも使えなくなってしまった!
どうやら調べてみると、パスワードを設定しなかったら鍵なしで入れるわけではないらしい。絶対やってはいけないことだが、ありがち?なミスらしく似たような投稿が複数あった。
結果的に、私の場合は作り直すのが早そうだったので、作り直し、動画では特に触れられてないが今度のバージョンはユーザ回りの設定をきちんとしたい。勉強を兼ねてもう一度1から一人で書き直してみよう
4時間半もかけて技術学習は進まなかったのだが、プログラミング独学の大変さや、エラーの解決方法を見つけるにも技術が必要だと学んだ。これ、明日になったら解決するのだろうか……ひとまず先生への質問を送ってみた。
回答来てて欲しい(他力本願)!!
【反省】
実戦で学べ!とはいうけれど、流石に仕組みがわかってなければ調べるコストが途方ないことがわかる。
やはりRailsとSQLについてのドットインストールを一周してからUdemyに来よう。全部わかる必要はないが、自走できる程度には知っていた方が早い。
それと、早めに勉強会に出席して知り合いを増やそう。
教え教わりあえる相手でもいいし、気軽に相談できる奇特な方でもいいいいし、やはり顔を知っている仲間が必要だ……!
(某オンラインサロンの質問板で聞くはあまりに初歩的過ぎそうなので、ググればわかること or 調べ方が悪いと言われてしまいそう)
【明日やること】
ドットインストールでRailsとSQLの学習
この記事が気に入ったらサポートをしてみませんか?