Just do IT

思うは招く

2020-12-01から1ヶ月間の記事一覧

RSpecが落ちているときにやること

1、落ちてるspecだけ実行できるように、itをfitにする fit "テストだよ" do end filter_run_when_matching - Filtering - RSpec Core - RSpec - Relish 2、RSpecのログをみれるようにする $ tail -f log/test.log ディベロップメントモードのログと同様に、…

rails の reload メソッドは何をしているのか

reload the record and clears changed attributes. 変更された属性をクリアして、もともとのレコードをリロードする。 api.rubyonrails.org > user.name => "kota" > user.name = 'hogehoge' => "hogehoge" > user.reload User Load (0.1ms) SELECT "users"…

【読書メモ】人は話し方が9割

「人は話し方が9割」という本がKindle Unlimitedで配信されていたので読んでみた。 コミュニケーションに困っていたわけではないけど、「なるほど、そう話せばよかったのか」といろいろ学べたので読書メモを書く。 人は誰しも認められたい生き物であることを…

ブラウザを Vim っぽく使える Vimium 拡張がとても便利

Vim

「ブラウザでなにか検索 → マウスでポチポチリンクをクリック」というのが面倒だったので、ブラウザを Vim のキーバインドで操作できるChrome拡張を入れてみた。 Vimium - Chrome ウェブストア 結論からいうと、作業効率がかなり上がって快適になったので、V…

Ruby でびっくりマークが2つ出てくるアレの意味

Ruby のコードを見ているとよく出てくる!!のやつ。 def user_exists? !!find_user end 呼び方としては、 エスクペラメーションマーク double-bang 二重否定 などがあるみたい。 意味 「true か false を返すメソッドをつくりたい」という場合はよくある。そ…

Ruby や Rails でよく見る、メソッド名の後ろのびっくりマーク(感嘆符)の意味

Rubyだと 基本的には、破壊的な変更を意味する。呼び出したオブジェクト側も変更してしまう。 $ irb > str = 'hoge' => "hoge" #普通にupcaseする > str.upcase => "HOGE" #呼び出したオブジェクトに変更はない > str => "hoge" #破壊的に変更する > str.upc…

はてなブックマークのブクマを全削除し、タグを非公開にする方法

タグ数が肥大しすぎて、後から読む気配も一切ないのでブックマークを全削除したかった。 全削除は以下ページから。 はてなブックマーク - 設定 - データ管理 ブックマークを非公開にするには以下ページから。 はてなブックマーク - 設定 - 個人設定

パーフェクトRails で勉強してて No route matches [POST] "/auth/github"エラー

Github認証をしたかったのだが、/auth/githubにアクセスしてもルーティングがないと怒られる。omniauth を入れており、ルーティングはよしなにやってくれるはずなので、routes.rb になにか書き込む必要はない。 結論としてはポカミスで、omniauth.rb をconfi…

RubyMine が重たいのでメモリ割り当てを増やした

業務レベルサイズのプロジェクトを開いたとき、RubyMine が重たくてストレスになっていた。 そこで「Jetbrains 重い」でツイッター検索すると、良い情報が得られた。 JetBrains系のIDE(IntelliJ IDEA、Android Studio、RubyMine、PyCharm、WebStorm、GoLand…

マンションのWi-Fiを速くした方法

うわ、家のインターネット、遅すぎ・・・! マンションのインターネット速度が遅く、ピークタイムでは10〜20mbps(下り)まで下がることもしょっちゅうだった。試しにポケットWi-Fiを借りて比べたら、そっちのほうが早かったのはけっこうヘコんだ オンライン…

Rails の dependent: :restrict_with_exception について調べた

先に結論: restrict_with_exceptionオプションとは: 親レコードを削除するとき、子レコードがある場合はActiveRecord::DeleteRestrictionErrorが発生して削除できない 子レコードを先に削除しないと、親レコードを削除できないオプションのこと 詳細 Rails…

Rails で ER図 を自動生成してくれる gem rails-erd

voormedia/rails-erd: Generate Entity-Relationship Diagrams for Rails applications 使用するには Graphviz が必要 brew install graphviz pdf出力も可能 group: :development に追加 group :development do gem "rails-erd" end 以下コマンドで現在いるR…

seed-fu gem を使ってみる

seed-fu という gem に触る機会があったため、どんなものかサンプルを動かしてみた。 seed-fu とは mbleigh/seed-fu: Advanced seed data handling for Rails, combining the best practices of several methods together. Rails デフォルトのseed機能だと、…

Sendagaya.rb に初参加しました

Sendagaya.rb #340 - Sendagaya.rb | Doorkeeper Toru Kawamura さんや Jun Fukaya さんがオーガナイザーとして開催されている Sendagaya.rb に初めて参加しました。毎回残すわけではないですが、初参加記念ということでレポートを残します。 初心者のころ、…

【Mac】RubyMine を開発で使うための基本的なショートカットキーや Git 操作など

Mac で RubyMine を使うとき、「RubyMine初心者はとりあえずこれを覚えておけば基本的にはOKかも?」というショートカットキーをまとめた。 RubyMine を使う前に 基本操作 すべてを検索する クラスを開く ファイルを開く アクションを開く コードグレップ コ…

An error occurred while installing puma (4.3.5) エラーを解決

ある Rails アプリをローカルで動かそうとしたとき、以下のエラーが出て bin/rails sができなかった。 An error occurred while installing puma (4.3.5), and Bundler cannot continue. Make sure that `gem install puma -v '4.3.5' --source 'https://rub…

複数のコミットを git revert したい

Git

結論としては、 revert したいコミットをとりあえず revert していく rebase -iをして、revert をしたコミットをまとめる という解決が妥当なところかもしれない。 ただし revert する個数にもよるので、そこはチームの git の運用方法に従ったほうがよさげ…

Rubocop Rails/UnknownEnv 警告の対処

Rails で Rubocop を走らせたところ、以下の警告が出た。 Rails/UnknownEnv: Unknown environment staging?. if Rails.env.production? && Rails.env.staging? Rails.env.staging?という部分の記述に関しての警告で、staging 環境を認識してくれていないよう…

git log で表示するログの数を指定したい

Git

たとえば最新のログ10個を表示したい場合 $ git log -n 10 --oneline 普通にgit logをしてしまうとたくさん表示される。revert や rebase -i をするときなんかに便利。

直前のコミットを削除したい

Git

git reset --hard HEAD^ [Git]コミットの取り消し、打ち消し、上書き - Qiita

コードやファイルを削除する系のコミットメッセージは delete か remove どちらを使えばいいか

Git

どちらも似たような意味で迷っていたので、Rails のリポジトリを見てみたらremoveが使われていた。 https://github.com/rails/rails/pulls?q=is%3Apr+is%3Aclosed+remove+ 参考:Gitのコミットメッセージの書き方 - Qiita

redis が Address already in use になっていたので kill する

問題 redis-serverで起動させようとしたが、以下エラーが出て起動しない。 86040:M 08 Dec 2020 16:22:41.138 # Could not create server TCP listening socket *:6379: bind: Address already in use 解決 Address already in useと出ているので、プロセスI…

プルリク(PR)を出した後にリモートのブランチ名を変更したい

やりたいこと PRを出したあとに、「やべ、ブランチに入れた Issue 番号間違えてた」みたいなとき、リモートブランチの名前を変更したい コミットの内容は変えずにただブランチ名だけを変えたい 方法 たとえば、fix-issue-#1ブランチを作ったけど、本当はfix-…

フィヨルドブートキャンプを卒業するためにやったこと(就職の話も)

(本当は「30代・プログラミング業務未経験・非関東民・子持ちの僕が〜」という文言をタイトルに入れたかったのですが、なんだかムダに炎上しそうなのでやめました) 「30代でプログラミング業務未経験、こんな自分をとってくれる会社なんて存在するのか…?…