Rails Tutorial メモ

#第1章
Bitbucketへのリポジトリ追加とリポジトリへのプッシュに関して、
git remote add origin git@bitbucket.org:ユーザー名/hello_app.git
のコマンドを打つ際に、ユーザー名を間違えた⇨「作成したORIGINを消したい」
`$ git remote rm origin`


ローカル環境のプレビューが表示されなくなった場合の対処
ディレクトの移動
`$ cd hello_app`
下記コマンドを実行しプレビュー
`$ rails server -b $IP -p $PORT`


2回目以降のHerokuへのデプロイを反映する方法
`$ heroku login --interactive`（ログインができない時）
`$ git add . `
`$ git commit -m "test"`
`$ git push heroku master`（$ git push heroku でも可）
`$ heroku run rails db:migrate`（テーブル追加や内容変更などをした場合）
`$ heroku open`（Windowを開く）

#第2章
HerokuへのPushができない場合は、Herokuがインストールされているか調べる。
`& heroku --version`
ルートディレクトリに移動
`& cd toy_app`
下記コマンドでHerokuをインストール
`& source <(curl -sL https://cdn.learnenough.com/heroku_install)`

2.2.1のページとはHerokuのページではない！
ローカルブラウザ？の.comより後ろを編集する。
「https://ecde157c391044aa996e79fd4ce5430b.vfs.cloud9.us-east-2.amazonaws.com」

 UsersからMicropostsに変更する際は、routes.rb 内でresources :users と resources :micropostsが混在している場合、どちらかをコメントアウトする必要がある。

演習1. showの表示？

#第3章
`$ git push -u origin`が効かなくなった場合、
`$ git remote`でremoteが正しく接続(作成)？できているか確認
エラーやできていない表示なら、下記実施で再度ログイン？
`$ git remote add origin git@bitbucket.org:ユーザー名/アプリ名.git`
その後下記でプッシュする！
`$ git add -A`
`$ git commit -m "変更の説明"`
`$ git push -u origin --all`

touch でファイルの作成をしたらファイルツリーを更新する必要がある？

### ブランチ（テスト環境？）のコードがテストOKで、マスターブランチに戻りギットにコミットし、Herokuにデプロイする流れ(rails tutorial 3-5)
`$ git add -A`
`$ git commit -m "Finish static pages"`
`$ git checkout master`
`$ git merge static-pages`
`$ git push`
`$ rails test`
`$ git push heroku`

以下を打つとエラーが発生？
`$ bundle exec guard`
Could not locate Gemfile or .bundle/ directory

#第5章
「!!」(「バンバン (bang bang)) という演算子を使うと、そのオブジェクトを2回否定することになるので、どんなオブジェクトも強制的に論理値に変換できます？

>> !!nil

#第6章
User.all.lengthで取得するclassの長さは、作成したUserクラスの数（文字数ではない）？

エラーメッセージの確認方法
`$example.errors.messages`

#第7章
デバッグを使うとrails console上で下記コードを差し込んだ状態を確認できる。
異常があると思われるコードの周辺に置くのがコツである。
(WEBページは表示されなくなるので注意＆終わったら control + C で出る必要がある。)
`$ debugger`

どちらが適切な使い方？
flash[:notice]
flash[:success]
Bootstrap CSSは、このようなflashのクラス用に4つのスタイルを持っています (success、info、warning、danger)。⬅️これが関係している？

下記コードでDBの内容がリセット可能！！
`&rails db:migrate:reset`

7-4　演習
content_tagというヘルパー　とは？

#第8章
flashはページが遷移したあともメッセージが残る➡️flash.nowを使う！
Progateは大丈夫だった？

トピックブランチでミスをした場合の取り消し方法(作業内容＆トピックブランチの削除)
トピックブランチの作成or移動
`$ git checkout -b トピックブランチ名`
`$ git add -A`
`$ git commit -a -m "失敗内容"`
トピックブランチの削除
`$ git branch -D トピックブランチ名`

#第9章
herokuがcomand not foundで使えない時の対処法(heroku -v等で確かめてから！)
`$ sudo yum -y update`
`$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash`
`$ export NVM_DIR=”/home/ec2-user/.nvm”`
`$ [ -s “$NVM_DIR/nvm.sh” ] && \. “$NVM_DIR/nvm.sh”`
`$ nvm install node --reinstall-packages-from=node`
`$ npm install -g cli-engine-command@8.0.0`
`$ npm install -g heroku-cli`
`$ source <(curl -sL https://cdn.learnenough.com/heroku_install)

#第10章
rails sが起動できない➡️Webサイト上ではinput/outputエラー？という表示がでた
英文から判断すると管理できるファイル数の上限があるらしい？
提案されたWEBサイト常にあった次のコマンドを入力した
`echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p`

#第１１章
下記コマンド(sendgrid:メール送信による確認機能)を使用したい場合、herokuにクレジットカードの登録が必要
heroku addons:create sendgrid:starter


#第１２章
下記エラーが出現、migrateが途中？らしい
Migrations are pending. To resolve this issue, run: bin/rails db:migrate RAILS_ENV=development
結果からいうと、1ファイルの単なるタイプミスだった。。修正後に rails db:migrate で解決

演習 12-21においてエディタ上で三角の注意マークが出現。
どうやら/が割り算と混同するらしい。バックスラッシュ(`)で解決しようとするもできず。 rails tではエラーにならないのでそのまま放置する。

sendgridが利用できない。
Googleで解決方法を探し、Herokuのsendgrid設定にリンクからとぼうとするもアクセスが拒否される。。。

#第１３章
f.objectとは？

最後の演習2 １２．６３において、
picture = fixture_file_upload('test/fixtures/rails.png', 'image/png')
上記の rails.png というファイルが無いので rails t がエラーになる。（手動で作成すればOK？）

13.4.4（途中で断念 S3の作成したバケットに正規IDでアクセスする方法分からず。。）
画像のupload
参考URL : https://qiita.com/ryuchan00/items/8e414562b7122e7ec4fb

#第１４章
User.first及びUser.secoundで新しいuserを作ると、User_id:1、User_id:2が自動的に付与される？
データベース上に登録されているユーザーが自動的に入る。