- 投稿日:2022-12-04T21:20:34+09:00
【Rails devise】Couldn't find User with 'id' = sign_out
状況 Rails6でdeviseを使用していると、以下のようなエラーが表示されログアウトができなくなることがある。 Couldn't find User with 'id' = sign_out こ…
- 投稿日:2022-12-04T19:26:39+09:00
【Ruby on Rails】 sqlite3 から mysql に切り替える
はじめに Ruby on Rails で デフォルトのデータベースが sqlite3 になっていますが、mysql に切り替えたいと考え、備忘録としてアウトプットします。 サービス環境 ruby 3…
- 投稿日:2022-12-04T18:00:03+09:00
Rails 7にOmniAuthでTwitterログイン機能を搭載
はじめに 10年ほど前にOmniAuthでTwitterログインをするという機能をいくつかのシステムで実装したのですが、久しぶりに同じことをやってみようとすると時間がかかってしまったので、今回実施し…
- 投稿日:2022-12-04T15:57:04+09:00
[Rails]ページの閲覧数をカウントする方法
考え方 ER図はこちら 作成するモデルはReadCountのみです 各Bookのshowページにアクセスした時に以下の処理を行う ・本のidと訪れたユーザーのidをReadCountに登録する 閲覧…
- 投稿日:2022-12-04T14:15:08+09:00
Rubocop導入
Rubocop導入 group :development do gem 'rubocop', require: false end bundle install touch .rubocop.yml AllCops: # 除外するディレクトリ(自動生成されたファイル) # デフォルト設定にある"vendor/**/*"が無効化されないように記述 Exclude: - "vendor/**/*" # rubocop config/default.yml - "db/**/*" - "config/**/*" - "bin/*" - "node_modules/**/*" - "Gemfile" # 1行あたりの文字数をチェックする Layout/LineLength: Max: 130 # 下記ファイルはチェックの対象から外す Exclude: - "Rakefile" - "spec/rails_helper.rb" - "spec/spec_helper.rb" # RSpecは1つのブロックあたりの行数が多くなるため、チェックの除外から外す # ブロック内の行数をチェックする Metrics/BlockLength: Exclude: - "spec/**/*" # Assignment: 変数への代入 # Branch: メソッド呼び出し # Condition: 条件文 # 上記項目をRubocopが計算して基準値を超えると警告を出す(上記頭文字をとって'Abc') Metrics/AbcSize: Max: 50 # メソッドの中身が複雑になっていないか、Rubocopが計算して基準値を超えると警告を出す Metrics/PerceivedComplexity: Max: 8 # 循環的複雑度が高すぎないかをチェック(ifやforなどを1メソッド内で使いすぎている) Metrics/CyclomaticComplexity: Max: 10 # メソッドの行数が多すぎないかをチェック Metrics/MethodLength: Max: 30 # ネストが深すぎないかをチェック(if文のネストもチェック) Metrics/BlockNesting: Max: 5 # クラスの行数をチェック(無効) Metrics/ClassLength: Enabled: false # 空メソッドの場合に、1行のスタイルにしない NG例:def style1; end Style/EmptyMethod: EnforcedStyle: expanded # クラス内にクラスが定義されていないかチェック(無効) Style/ClassAndModuleChildren: Enabled: false # 日本語でのコメントを許可 Style/AsciiComments: Enabled: false # クラスやモジュール定義前に、それらの説明書きがあるかをチェック(無効) Style/Documentation: Enabled: false # %i()構文を使用していないシンボルで構成される配列リテラルをチェック(無効) Style/SymbolArray: Enabled: false # 文字列に値が代入されて変わっていないかチェック(無効) Style/FrozenStringLiteralComment: Enabled: false # メソッドパラメータ名の最小文字数を設定 Naming/MethodParameterName: MinNameLength: 1…
- 投稿日:2022-12-04T14:09:52+09:00
相互フォロー間のユーザー同士でDMを送る方法
忘備録、並びに考え方の整理として投稿します 初学者なので効率的なコードの書き方などは出来ていないかと思います。 今回の目的 相互フォローをしているユーザー間でDMを送り合いたい 前提条件 ruby …
- 投稿日:2022-12-04T13:02:54+09:00
Ruby・Node.js・Goのライブラリバージョン管理比較
対応表 バージョン管理ファイル Ruby Gemfile source 'https://rubygems.org' gem 'nokogiri' Gemfile.lock GEM remote: …
- 投稿日:2022-12-04T12:46:10+09:00
ruby/railsをdocker環境で立ち上げてみる。
はじめに naritomoと申します。 本職はインフラエンジニアを行っています。 最近扱ったruby系について、開発環境構築方法について投稿したいと思います。 いろいろアドバイスいただけると嬉しいで…
- 投稿日:2022-12-04T07:02:10+09:00
VueなどのSPAを使った際のRESTAPIの設計
1.はじめに バックエンドとフロントエンドのフレームワーク両方学習し終わった皆さん、本格的に両方を用いたWebアプリ制作を始めると思います!その中の道しるべになればいいなと考えているので、ぜひ見てい…
- 投稿日:2022-12-04T07:01:24+09:00
Turbo 3: Turbo Framesで分解
この記事はGoogle翻訳の結果を編集したものです。 https://turbo.hotwired.dev/handbook/frames Turbo Framesを使用すると、ページの事前定義さ…
- 投稿日:2022-12-04T00:48:49+09:00
Cloud RunのDBマイグレーションどうする問題にCloud Runジョブで対処する
RailsアプリをCloud Runで動かすときにいくつか悩むことがありますが、そのひとつにDBマイグレーションをどうやって実行するかがあると思います。 この問題の解決策としてCloud Runジョ…