Torihaji's Growth Diary

Little by little, no hurry.

2024-01-01から1年間の記事一覧

Rails 、エラーの時に使うraiseの使い方!

はじめに みなさん、こんにちは torihaziです 書き殴りメモです! raiseの3種類の使い方 # パターン1 raise "エラーメッセージ" # パターン2 raise ErrorClass, "エラーメッセージ" # パターン3 raise ErrorClass.new("エラーメッセージ") # シンプルな例 ra…

Rails におけるmoduleのincludeとextend と Concern周りについて

そもそもなぜmoduleを使う必要があるのか Rails module #Ruby - Qiita (今回触れるのはこのqiitaで言うとメソッドの格納場所として使用するmoduleです) いくつかの処理において重複しているような処理を抽出し切り出すことによって管理をしやすくするため ま…

textareaでEnterでsubmitするときに全角を確定させてからsubmitする

はじめに みなさん、こんにちは torihaziです 今日はタイトルのことをやっていきます。 この前実務でtextareaのformを実装していたところ enterでsubmit、shift + enterで改行するような処理はできたのですが、 日本語入力するときに確定する時の"enter"もな…

Railsのdefaultで使われるメモリのキャッシュが本当に別プロセスで使えないか試してみた。

はじめに みなさん、こんにちは torihaziです。 さっきのAIチャットbotをRedis、Sidekiqと合わせて使うためにRedisについて学んでいるのですが、 そこでキャッシュにまつわる記載が出てきたので、そこに対する理解を深めようと今こうして書いてます。 という…

爆速簡易的AIチャットbotの作り方(Rails、Python、Next.js)

はじめに みなさん、こんにちは。torihaziです。 今日はタイトルの通り、AIチャットbotを作ってみようかと思います。 実務で似たような構成で扱うそうなので、どんなものかを実際に作ってみて イメージ掴む目的でやってみました。 作成はClaudeが主で、微修…

docker compose で MySQLを立ち上げる(ちょっとGo)

はじめに 現在、Goを触っています。 そこでgorm?とか使うためにMySQLを使うらしいのですが、 Udemyがローカルに入れたものを使っていました。 せっかくならDockerで立てたものを使いたくね?てことで急遽やりました。 この前PostgreSQLのコンテナ立てたしい…

実務初めて4ヶ月の振り返り

はじめに みなさん、こんにちは torihaziです さて、今年は残すは1ヶ月となりました。 寒いですね、私は朝起きるのが遅くなってきました。 あまり生活習慣が乱れないように7時台には起きれるように頑張っていきたいと思います。 では 4ヶ月目の振り返り、sta…

Railsの 例外処理 したければなんでも!つければいいてわけじゃない

はじめに みなさん、こんにちは torihaziです 今日はタイトルのことについて軽く触れていこうと思います。 というかそれが結論なのでそれ以上言うことないのですが。 ま、いいか。 結論 RailsにおいてDBへのCreate、Update、Deleteとかする際に例外処理をす…

個人開発-v2-1日目

はじめに みなさん、こんにちは。torihaziです。 今日から勉強の新しいモチベとして個人開発をまたやりたいと思います。 前回よりかは少しパワーアップしておいて欲しいと思ってます。 それではいってみましょう!! 要件 どういうものを作りたいか。 それは…

実務初めて3ヶ月の振り返り

はじめに みなさん、こんにちは torihaziです 今日は実務が始まって3ヶ月が経とうとしているので いつも通り振り返りをしていこうと思います。 言語化していくことで、自分の進歩を実感できるとともに 理想としている姿との差異の可視化ができると思っている…

prismaの定義をキャメルケースにしたいと思ったら

はじめに みなさん、こんにちは torihaziです 最近、frontendにおいてdataの型管理効率化のためだけに prismaを入れて開発を進めてます 最初はコマンド1つでDBからスキーマ取得して云々作成してくれることに めっちゃ感動していたのですが使っていくうちに、…

alba用の"rails g alba hoge"みたいなジェネレータを作った

はじめに みなさん、こんにちは torihaziです 今日は昨日初めて知ったRailsの自作ジェネレータを実際に使ってみたということで練習がてら作ってみました 昨日の時点で便利では?と思ったので今後も使っていきたいと思います ちなみにalbaはこれです。Railsの…

色々使ってみてわかったイチオシのRails Serializer

はじめに みなさん、こんにちは torihaziです 今日はタイトル通り 数あるRailsのSerializerのgemを色々使ってみて どれが自分にとって使いやすいかを検証していこうと思います。 メンテがされてるされてない、重い重くないとかは気力があったら書いていきま…

rails g serializer の再発明。(jsonapi_serializerでも使えることを知らなかった)

はじめに みなさん、こんにちは torihaziです 今日はもしかしたら車輪の再発明みたいなことをしてしまったかもしれません。 あるの知りませんでした。 jsonapi_serializerを使っていて rails g serializer userみたいなことをするときに できないんじゃね?…

axiosのinterceptorを使って、submitするdataを全てスネークケースにする方法

はじめに みなさん、こんにちは torihaziです 今日は実務でタイトルのことをやる機会があって、 色々と調べたのでそれを書き残そうかと思って今書いてます 経緯 frontendとbackendでキャメルケースかスネークケースかで違うと思います。 frontはuserDataみた…

TypeScriptでオブジェクトの型からキーのみを取り出してユニオン型を作るときの落とし穴

はじめに 最近知りました。 結論 オブジェクト型A、オブジェクト型Bのユニオン型からなる型Cに対してkeyofを設定すると AとB共通でもつkeyのみのユニオン型が返される。 やりたいなら type C = (keyof A) | (keyof B) 経緯 TypeScriptにおいてオブジェクトの…

BlockNote を使って遊んでみる.

はじめに BlockNoteはWYSWIGなEditor。 What you see is what you get 。 みたまんまのものをgetできるよ。というエディタ。 MarkdownとかHTMLとかも行けるみたいで、 Editorjsと違ってなんか強そうということで触ってみる。 深掘りはやる気次第。 敵情視察…

React-Hook-Formのデバッグ方法で個人的にしっくりきたやつ

はじめに みなさんこんにちは torihaziです 現在、RailsとNext.jsでXクローン作成中なのですが 投稿の部分でめちゃめちゃ詰まりました。 投稿自体はできたのですがzodと組み合わせたvalidationがうまくいかなくて。 そこでReact-hook-formがサブスクライブし…

NextUIのInputがfile添付できなかったので作った

はじめに みなさん、こんにちは torihaziです。 現在、RailsとNext.js(NextUI)でXクローンを作っているのですが タイトルのことで少し詰まったので記事にしてみました 今作ってるもの 結論 Buttonコンポーネントとinputタグで作ります。 export const InputF…

NextUIのTooltip使ってたら1つ詰まった件

はじめに みなさん、こんにちは torihaziです 現在、RailsとNext.js(NextUI)でXクローンを作っているのですが 作成する上でタイトルの件で少し詰まったのでそれを書き残そうかと思います 今作ってるやつ 結論 NextUIのtooltipを使うときは複数要素を表示させ…

Railsのredisとsidekiqの関係

はじめに 仮。構想まとまってから書いてみる。 現実世界の例を使って説明すると、理解しやすくなるかもしれませんね。レストランの注文システムを例に挙げてみましょう: レストランの注文システム: Redis = キッチンの注文票ボード Sidekiq = キッチンスタ…

なぜAWSのEC2においてec2-userでsudoしたら全部のコマンドが実行できるのか

はじめに みなさん、こんにちは torihaziです。 今日はタイトルのことを少し復習がてら、昔の知識を掘り起こしながら 書いていこうと思います。 ※途中脱線するかもしれません。「なんでこうなるのか」を咀嚼しながら進む予定です。 結論 /etc/sudoers.d/cluo…

devise-jwtを使って別ユーザでログインしたら、前ユーザとしてログインされてしまう件

はじめに みなさん、こんにちは torihaziです 今日はdevise-jwtを使用してログイン機能を実装していたところ 予想と異なる挙動を示したのでその調査をしていきたいと思います ではltg ※ 結論、原因は究明できていません。 結局frontendにおいて応急処置のよ…

実務初めて2ヶ月の振り返り

はじめに みなさん、こんにちは torihaziです 9月は月末も近づいてきたので、月の振り返りといこうと思います。 実務も2ヶ月が終わろうとしていて 色々できるようになったこと、わかってないこと など色々あるのでこういうところで言語化していって 将来の解…

Nextjs x Rails のXクローンにprismaを入れて楽(?)をする。

はじめに おはようございます! torihaziです 今日は実務と並行して行っているNextjs x Rails のXクローンで使用予定の Prismaについてぶっつけ本番で入れて使用感や導入方法などを つらつらと書いていこうと思います! 今作っているのはこんな感じです Pris…

NextuiのDividerが使えなかったので、Dividerを他の参考にして自作した。

はじめに みなさん、こんにちは torihaziです 最近、Xクローンを作っているのですが こういうやつがNextuiのDividerで作れなかったので これを機に作ってみました。 多分よくあるやつです! あとNextui x tailwindです そもそもNextuiのDividerは? https://…

初めての個人開発日記 10日目

はじめに こんにちは、torihaziです 土日でリリース予定ですが、とりあえず今日は更新と削除まで行きたいと思います。 昨日少しやる気が云々とか言ってましたが 今日は少し大丈夫な気がしなくもない。 つべこべ言わずにやりましょう。 技術選定 [frontend] N…

初めての個人開発日記 9日目

はじめに こんにちは、torihaziです 週末リリース予定ですが、果たして終わるのでしょうか。 今日も時間は短いですが、やっていきましょう 技術選定 [frontend] Nextjs(pages router) => App Routerの理解に苦しんだため MUI => 調べたランキングでtopだった…

初めての個人開発日記 8日目

はじめに みなさん、こんにちは torihaziです 今日は午前中にはauthorization付きのリクエストを送ってそれを元に diaryの一覧ページを表示させることを完成させ、午後からは crudのページ関連を作り込んでいこうと思います。 技術選定 [frontend] Nextjs(pa…

初めての個人開発日記 7日目

はじめに おはようございます! torihaziです 今日もやっていこうと思います 昨日の宣言通り、diaryのcrud画面とそのapiくらいは作りたいと思います! 技術選定 [frontend] Nextjs(pages router) => App Routerの理解に苦しんだため MUI => 調べたランキング…