Doiya’s blog

日々の進捗を書く雑記ブログ(メインはエンジニアやプログラミング関連)

現場Rails 写経して得たこと(3章)

全部は書けないので、ほんの一部分だけ書きますね。

1こんなエラーが出たよ。

I18n::InvalidLocaleData at /tasks/new
can not load translations from /Users/??/workspace/??/kiso/taskleaf/config/locales/ja.yml: #<Psych::SyntaxError: (<unknown>): could not find expected ':' while scanning a simple key at line 10 column 5>

こういうのが出たら、ymlの部分をみようね。そこが原因でエラーになっている可能性が高い。 余談やけど、ymlを「ヤムル」って読む人もいるみたい。

マイグレーション:データベースにテーブルを追加する で起用するには「rails db:migrate」をやる。

3ルーティング リクエストを処理すべきコントローラ とアクションを特定する。

4 ja.yml  

モデルの名前はmodelsの下 
属性の名前はattributesの下

5 PostとGetの違いは以下の記事がわかりやすかったかも。

blog.senseshare.jp

6 form_with モデルオブジェクトを使ってHTMLのform要素を作成するための メソッド。モデルとフォームは、form_withにmodel:@〇〇という引数を渡すことで対応可。ちなみにパーシャルのところ(現場rails p119) new.html.slim

= render partial: 'form', locals: { task: @task }   ...①

_form.html.slim

= form_with model: task, local: true do |f| ...②

①で記述しているlocalsオプションは、パーシャル内のローカル変数を設定します。locals: { task: @task }と記述すると「インスタンス変数@taskを、パーシャル内のローカル変数taskとして渡す」という意味になります。これにより、②のようにローカル変数taskから利用できる。

補足 p106.107の部分は個人的に大事なところだと思うので、また復習した方がいいと思う。(書く量、多くなるので省略します)