今月はRuby on Railsを学習してみようかな
Udemyで購入した、Ruby on Railsの講座。
今月(6月)、学習してみようと思います。毎朝30分。会社でもちょっとの時間を見つけて勉強してみます。
目標は簡単な連絡票をWEBアプリケーションにすることです。
さて、Udemyで学習を開始します。(2023.6.6)
早速、開発環境で引っかかりました。Visual Studio Codeを使って開発したいので、自分で調べてみます。
大体こういうことをやり始めると環境を作るところで挫折しちゃうんですよね。
このページを参考にします。Windows ベースですが、gem install rufoまでは問題なくクリアしました。
この後Ruby on Railsの拡張機能をインストールしてるところで終わってる〜
実際に環境ができてるかどうかテストしたいのに〜、ちなみに、Ruby のファイルは実行できました。
環境を作りながら、Rubyを学習します。
Ruby が動けばRubyの学習は進められますよね。
Ruby on Rails が動作するかどうからこのサイトにあるので、明日試してみたいと思います。
(2023.6.8)
Rubyのサイトはこれ
VSCでRuby on Railsの開発手順を書いたサイトがあったので、そちらを使ってVSCでRails が実行できるかテストをしていきたいと思います。
VSCのターミナルで、Rails new TEST0609 を実行。
で次はサーバを起動
VSCのターミナルで、Rails s と入力するとエラー発生
Could not find gem 'sass-rails (~> 5.0)' in any of the gem sources listed in your Gemfile.
Run `bundle install` to install missing gems.
さてここからがError潰しの旅です
動作させるために、これから私が行う方法は適当、行き当たりばったりでの対応ですので、その点はご了承ください。
Could not find gem 'sass-rails (~> 5.0)' in locally installed gems.
gem のバージョンに問題があるようです。
作ったフォルダ内で以下のコマンドを実行
bundle install
Could not find compatible versions
Because rails >= 4.0.0.beta1, < 5.0.5.rc1 depends on bundler >= 1.3.0, < 2.0
and the current Bundler version (2.4.13) does not satisfy bundler >= 1.3.0, < 2.0,
rails >= 4.0.0.beta1, < 5.0.5.rc1 cannot be used.
So, because Gemfile depends on rails = 4.2.8,
version solving has failed.
Your bundle requires a different version of Bundler than the one you're running.
Install the necessary version with `gem install bundler:2.0.0.pre.3` and rerun bundler using `bundle
_2.0.0.pre.3_ install`
gem install bundler:2.0.0.pre.3
Fetching bundler-2.0.0.pre.3.gem
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.
ディレクトリに書き込めないみたい
管理者権限で
sudo gem install bundler:2.0.0.pre.3
assword:
Fetching bundler-2.0.0.pre.3.gem
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.
このサイトを参考にrbenv を使ってみます
brewが必要なので、インストールします
マックの場合はHomebrewなんですね。
Homebrewのサイトから
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
をコピーしてターミナル(VSC)で実行
Homebrewはインストールされましたが、brewコマンドは実行できません。
よくよくインストール結果をみてみるとWarningが発生。パスが通っていないらしい。
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/baba-s/.zprofile
と
eval "$(/opt/homebrew/bin/brew shellenv)"
とターミナルで入力すると
brew -v は実行できました。
which brew
でbrewの実行場所を調べてみると、
/opt/homebrew/bin/brew
になってました。
実行できる場所とできない場所があるみたい。ということは正しい場所にBrewがインストールされていないみたいです。(2023.6.9)
もう一度Homebrewをインストールします。Nextstepに指示があるように
eval "$(/opt/homebrew/bin/brew shellenv)"
も実行しておきます。
Homebrew で
brew install wget
でツール群をインストールします。
さてここからrbenvをインストールです。rbenv 環境作成のために参考にしたサイトhttps://qiita.com/nishina555/items/63ebd4a508a09c481150
ますはbrewのアップデート
Already up-to-date. だそうなので、次
【2023.6.10】
brew install rbenv ruby-build
問題なし
rbenv versions -> Systemが返ってきたのでいいみたい
rbenv install -l で インストールできるRuby のバージョンを確認
現状は3.2.2が安定版らしいので、それをインストール
rbenv install 3.2.2
rbenv global 3.2.2
とここまでは順調。最後にパスを通すようで
設定ファイルに以下のパスを入力
[[ -d ~/.rbenv ]] && \ export PATH=${HOME}/.rbenv/bin:${PATH} && \ eval "$(rbenv init -)"
ちなみにPATHの確認は
echo $PATH
ここからはこのサイトでお世話になります。
まずはどのシェルかを調べます。
echo $SHELL
/bin/zsh だそうです。
で、環境設定ファイルがあるかどうかを調べます。
.zshrc だそうです。
ls -a を使って探します。 -a オプションは隠しファイルも表示します。今日はここまでにします。【2023.6.11】
【解決】
open ~/.zshrc でテキストファイルを開きます。テキストエディトが .zshrcを開きます。
で、ここ数日やっていることってRuby on railsの環境ができてないからやってることだよねと思い、Visual Studio Codeは関係ないんだ〜
という自分の大きな勘違いがあったことに気がつきました。
私が引っ掛かっていたのはVisual Studio Codeで環境を作る以前のmacにRuby on railsの環境を作るところに問題があったわけです。
そこに気がつきUdemy の講義を見返すとHomebrewをインストールして、ebenvをインストールなどちゃんと動画で説明されていました。そして
そして、Rails サーバの起動方法もありました。この手順だけでも問題なくサーバー起動までは辿り着きました。
その指示に従って サーバを起動させましたが、またしてもエラー。エラー内容をみるとgemファイルのバージョンの問題のようです。
以下エラー内容
Could not find gem 'rails (= 4.2.8)' in locally installed gems.
The source contains the following gems matching 'rails':
* rails-7.0.5
Run `bundle install --gemfile /Users/seitarom1/Library/CloudStorage/GoogleDrive-seitaromi@gmail.com/マイドライブ/Develop/ruby/test0609/Gemfile` to install missing gems.
またか〜と思いましたが、待てよ。今テストしているRuby on railsのテストファイルは私がここ数日四苦八苦する前のもの。でも今は色々な環境をバージョンアップしたからバージョンがあっていないのかも。と思い、もう一度テストファイルを今の環境で作り直しました。
rails new test0612
そこでちゃんとtest0612にディレクトリを移動させて
bin/rails s
きた〜
エラーを言わずサーバが起動しているようです。
Safari のURL 窓に localhost:3000 と入力したら画面が表示されました。
昔の画面より表示が、シンプルです。
やっと起動させることができました。
フレームワークのバージョンが変わるとgemファイルのバージョンとの互換性がなくなるのかもしれません。修正の方法はあるのだと思いますが、まだまだ門前の小僧には無理です。
色々とUNIXのコマンドもわかって勉強になりました。
【2023.6.12】