【rails g model モデル名 で誤ったモデル名を命名してしまった場合】

rails g model commentを誤ってrails g model commnetとしてしまったので、正しく再命名します!

謝った命名でファイルが複数生成されてしまったので↓ ↓↓

      invoke  active_record
      create    db/migrate/20211013082330_create_commnets.rb
      create    app/models/commnet.rb
      invoke    test_unit
      create      test/models/commnet_test.rb
      create      test/fixtures/commnets.yml

rails destroy model commnetとします。

すると、

      invoke  active_record
      remove    db/migrate/20211013082330_create_commnets.rb
      remove    app/models/commnet.rb
      invoke    test_unit
      remove      test/models/commnet_test.rb
      remove      test/fixtures/commnets.yml

誤って生成された複数のファイルをまとめて削除することができました。

その後、正しいモデル名でモデルを作成します。

【 ターミナルでyarn install 実行時にエラー 】

rails アプリケーションを立ち上げるにあたって、 yarn installを実行したところ、実行に失敗しました。

現在TECH::CAMPを受講中なので、メンターさんに確認したところ。

アプリケーションを動かすための記述を全て消してしまっていたとのこと(wtf

そこで、以下の様にご教示頂き解決!

まず、
vim ~/.zshrc
を実行

①iを押してインサートモードにする
②すでに記述されている情報は消さずに、以下の記述を追加する

eval "$(rbenv init -)"
export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"
export PATH="/usr/local/opt/node@14/bin:$PATH"

③escキーを押し、:wqと入力し保存して終了する
④source ~/.zshrcを実行
⑤再度yarn installを行なう

どうやら②の内容を消してしまっていた様です。

esc...ノーマルモードに戻る

:wq...編集した内容を保存してVimを終了する

source...反映させる

【Ajaxでコントローラーにリクエストを送る。を紐解く】

function post (){
  const submit = document.getElementById("submit");
  submit.addEventListener('click', (e) =>{
    e.preventDefault();
    const form = document.getElementById("form");
    const formData = new FormData(form);
    const XHR = new XMLHttpRequest();
    XHR.open("POST","/posts", true);
    XHR.responseType = "json";
    XHR.send(formData);
  });
};

window.addEventListener('load', post);

【目的】

ソースコード言語化する試み。

【全体像】

ウィンドウが読み込まれたとき、 関数postを実行する。

【概要】

その内容とは、 投稿ボタン(id = submit)がクリックされたとき、 フォームに入力された内容をXML HttpRequestを使って、 リクエストを送信するというものです。

【詳細】

そのためには、 何処に? どのフォーマットで? httpメソッドは? 非同期通信のon/offは? などを指定し、 さらに、フォームで入力された値を取得し、 オブジェクトを生成しておく必要があります。

【補足】

XML HttpRequestとは、 JSからAjaxによるリクエストを行うときに利用するオブジェクトです。

【A server is already running.(rails s実行時)】

rails sでサーバーを立ち上げようとしたところ、

A server is already running.

と表示され、接続できない。

↓↓↓↓↓↓↓↓↓↓↓↓

まず、

lsof -i:3000  

でPIDを確認。(仮に1111とします)

kill -9 1111

でプロセス削除。

rails s

を実行すると、無事サーバーが起動しました。

【 rubyの"実引数" と "仮引数"について 】

実引数と仮引数。 どっちがどっちだったか忘れてしまいがちなので、 書き落とします!

メソッドの定義には引数をつける事が出来、これを「仮引数」。

("仮"の文字を指定してあげる為?"仮")

その定義したメソッドを呼び出すときに付けてあげるのが、「実引数」。

("実"際に使う値を指定してあげる為?"実")

def sample(hoge) #仮引数
   puts "good"
end

sample(fuga)#実引数