emolog

脳内メモです。

rails

githubActionでbundle installの際に、bundle lock --add-platformしろと言われた

事象 MacでlocalのRailsを動かしていた githubActionでubuntuの実行環境でCIを実行したかった bundle installの際に Your bundle only supports platforms ["x86_64-darwin-19"] but your local platform is x86_64-linux と言われる bundle lock --add-plat…

【rails】新規のrailsプロジェクトを作るときの手順メモ

何回やっても、よく忘れるのでメモです。 新規のrailsプロジェクトを作る 前提 rails new hogeしない システムのgemを使わない bundle execで呼び出す $ mkdir hoge $ cd hoge $ bundle init Gemfile # frozen_string_literal: true source "https://rubygem…

【rails】active_adminの詳細ページを変更する

やりたいこと active_adminで管理画面の詳細ページから、ユーザのメールアドレスを変更できるように修正したい やったこと /admin/users.rb の変更 ActiveAdmin.register User do actions :index, :show, :new, :create, :update, :edit permit_params :emai…

【rails】 seedデータ投入時に、csvをimportしてよしなにする

seed_data投入をいい感じにやりたかったので、メモ seeds.rbに全部入れるのは見通しが悪くなるのでやめたい。 やりたいこと csvファイルに、seed_data用のファイルを定義 そのファイルを読み込んでseed_dataとして投入 bundle exec rails db:seed で実行され…

railsでfactory_botのセットアップ

やりたいこと 新規プロジェクトでのfactory_botの整備をしたい railsでモックのデータを作る やったこと gemに追加 group :test do gem 'factory_bot_rails' end rails_helperに以下を追加 RSpec.configure do |config| config.include FactoryBot::Syntax::…

rubocopを入れたメモ

やりたいこと 新規プロジェクトでのrubocopの整備 やったこと gemの追加 group :development do # rubocop用に追加 gem 'rubocop', require: false gem 'rubocop-performance', require: false gem 'rubocop-rails', require: false gem 'rubocop-rspec' end…

rspecのセットアップ

github.com # Or, run against the main branch # (requires main-branch versions of all related RSpec libraries) group :development, :test do %w[rspec-core rspec-expectations rspec-mocks rspec-rails rspec-support].each do |lib| gem lib, git: …

rails newするときのオプションのメモ

よく忘れるのでメモ helpを見ましょう $ bundle exec rails help Usage: rails new APP_PATH [options] Options: [--skip-namespace], [--no-skip-namespace] # Skip namespace (affects only isolated applications) -r, [--ruby=PATH] # Path to the Ruby …

ActiveRecordでレコードの合計値を取得する場合は、countよりsize使おうという話

結論(仮) countよりsize使ったほうが便利 sizeとcountの挙動の違いについて size メモリに乗っているときはクエリ発行せずメモリ上から計算 なければクエリ発行 以下railsのapiドキュメントからの引用 size()Link Returns the size of the collection. If …

railsのENV[]とENV.fetch()の違い

ENV[] とENV.fetch()の違いがわかっていなくで少しはまった。 localでfailした local環境でもstagingやprodutionの環境変数部分は展開しているっぽい 修正前 staging: <<: *default host: <%= ENV["DB_HOSTNAME"] %> database: <%= ENV["DB_NAME"] %> username: <%= ENV["DB_USERNAME"] %> password: <%=</:>…

railsでいい感じにページングしたい人生だった

railsでmobile用にページングを作成する必要があり、いい感じにページングしたかったのでメモです。 要件 以下をapiのcall元(今回であれば)mobileからparameterが渡される。 それに合わせてページングする pagingした何ページ目か page defautl: 1 paging…