or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
【第17週】パRails輪読会🚂 (2023-12-11~ 2023-12-15)
tags:
パRails🚂
rails s
できない可能性が高いです。以下のページに環境構築の手順をまとめたので、ドライバーをやってくださるという方は、こちらに沿って環境構築をお願いします🙏
⏩ 環境構築の手順 2022年版
⏩ 環境構築の手順 2023年版
💁♀️ 更新の手順 2章編
目次
2023-12-11(月)
ファシリ
@sharoa
ドライバー
@hiromisugie
読んだところ
6-3-5 296P 「ログイン処理を作成する」の途中から
PR:
次回
6-4-2 「イベントようのモデルを作成する」から。🚂
学んだこと・感想
@sharoa
find_or_create_by
という便利なメソッドがあって素敵だな、と思った。あとで公式のドキュメントに目を通してみようと思います。!!
はnot演算子。チェリー本で見かけたことある!と思って探したらありました!(p203)「確実にtrueまたはfalseを返すイディオム」とのことです。@hiromisugie
!!
は、nilになるときにfalseを返したい、みたいな場合に便利。@moegi29
@sadanora
request.env["omniauth.auth"]
find_or_create_by!
!
なしのメソッドの方は例外を発生させない。!!
はRailsチュートリアルで「バンバンと読みます」って紹介されてた気がするのですが、そういう風に呼んでる人を見かけたことがあんまりない気がする。@shodan
find_or_create_by
で書き直せるかも?」というレビューをちょこちょこ見かけるので、何気に大事なことを知れたかもと思いました。helper_method
メソッドは、引数に渡したコントローラのメソッドをビューでも使えるようにするものinclude
するのとどっちがいいのか?みたいなことで悩んだりすることがあるのかな?とか色々考えてしまいましたrequest.env["omniauth.auth"]
から取得できる@motohiro-mm
request.env["omniauth.auth"]
にGitHubから渡されたユーザー情報やOAuthのユーザー情報等が入るfind_or_create_by!
メソッドを用意してくれているreset_session
メソッドでセッションに入っていた値が全て削除されログアウトされる!!
:チェリー本203P 真偽値の型変換 に書いてありました〜2023-12-12(火)
ファシリ
@moegi29
ドライバー
@sadanora
読んだところ
6-4-2 「イベント用のモデルを作成する」から
6-4-3 「ログイン状態を管理する処理を作る」まで。
PR:https://github.com/PerfectRubyonRails-Rindoku/Perfect_Ruby_on_Rails_Ch6/pull/7
次回
6-4-4 「イベント登録用のフォームを作る」から。🚂
学んだこと・感想
@sharoa
@hiromisugie
rails g resource
でモデルとコントローラとルーティングを同時に作成できる。あんまりやったことなかったような気がするので覚えておきたい。add_index
は、その項目でよく検索することが予見できる場合にはつけるし、そうでもなければつけなくても良いApplicationContoroller
に定義する||=
はnilガードrails s
して画面を見たい、、、@moegi29
@shodan
add_index
は指定したカラムにインデックスを貼る、マグレーションのメソッド。add_index
については「ここではこうしておきましょう」みたいな触れられ方が多かった印象なので、聞けてよかったです。class_name
オプションに元のモデル名を指定する。自分のモデル名_id
ではない場合は、foreign_key
オプションを設定する。@sadanora
add_index
@motohiro-mm
add_index
はよく検索するものを書いておく。コスト等はかかるのでなんでも書けばいいわけではない。before_action :authenticate
で、未ログインユーザがそのコントローラのアクションにアクセスした時はトップページへリダイレクトするskip_before_action :authenticate
2023-12-13(水)
ファシリ
@motohiro-mm
ドライバー
@sharoa
読んだところ
PR:https://github.com/PerfectRubyonRails-Rindoku/Perfect_Ruby_on_Rails_Ch6/pull/8
次回
学んだこと・感想
@sharoa
moegi
@hiromisugie
history
をすると、コマンド実行した履歴が見られる@sadanora
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →@motohiro-mm
2023-12-14(木)
ファシリ
@sharoa
ドライバー
@sadanora
読んだところ
6-4-4 「イベント登録用のフォームを作る」の途中から、
6-4-5 「バリデーションエラー時の設定」まで。
PR:https://github.com/PerfectRubyonRails-Rindoku/Perfect_Ruby_on_Rails_Ch6/pull/9
次回
6-4-6 「i18nの設定をする」から。🚂
学んだこと・感想
@sharoa
@moegi29
@ayu-0505
@hiromisugie
Time.zone.now
やTime.current
などを使う一方、Turbolinksを使うと(?)、ページ遷移することなく、入力した内容の中でエラーがある部分だけを検知してそれに適したエラーメッセージだけをJavaScriptがHTMLに挿入して画面に表示してくれるので、ページ全体を読み込むよりも無駄が無い、という感じ…?
Turbolinks
という名前を聞くと、ビビる@motohiro-mm
@sadanora
form_with
メソッドはデフォルトでdata-remote="true"
属性を持ったformタグを生成する。data-remote="true"
rails-ujs
がformの送信を捕捉してAjaxで非同期にフォームの情報を送信するrails-ujs
は廃止されてこの辺もTurbo(Turbolinksの後継)がやってた気がする2023-12-15(金)
ファシリ
@ayu-0505
ドライバー
@sharoa
読んだところ
6-4-5 「バリデーションエラー時の設定」から
6-5-2 「イベント一覧ページの作成」 318pまで。
PR:https://github.com/PerfectRubyonRails-Rindoku/Perfect_Ruby_on_Rails_Ch6/pull/10
次回
6-5-2 319p columnから。🚂
学んだこと・感想
@sharoa
@moegi29
start_at > ?", Time.zone.now
だとこれから開催するイベントを表示<
だと過去のイベントが表示されるということを実際に試して頂いてわかりました。@shodan
Shift
をつけると大体逆だったりするので感覚で試したりしてます。command + z
(元に戻す)の逆はcommand + Shift + z
(前に進む)。@motohiro-mm
image_tag
のところで、GitHubの画像がuser.image_url
に入ってたんだなってことに驚きました@ayu-0505
lef237
rails console --sandbox
コマンドを使うと、データを上書きせずに気軽にRails Consoleを使えるのでオススメ!@hiromisugie
rails-i18n
というgemで利用できるbelongs_to :owner
(ownerの中身はuser)と書いたが、Userモデル側にhas_many :events
ってセットで書かなくていいんだっけ?というあたりがちょっとよくわかっていない…rails c
でデータが入っているかどうかを一つずつ見ていくのが重要