楽天銀行の入出金明細は全期間を CSV でダウンロードできるので、その CSV から特定の名義についての振込を抽出したかったので書きました。
最近は小さいサービスをSinatra + Sequel + Dockerの構成でやっている。
今回はError: Sequel::Migrator::Error: More than 1 row in migrator table
というエラーが出てきてよくわからなかったのでその対処法を残しておく。
本当は良くないんだけど、production環境で直接rails console
を使って作業する事があるのでうっかりローカル環境と間違えないようにpry
の色を変えておきたい。
Railsほど大きいフレームワークを使いたくない時にSinatra
+ Sequel
でやろうとしたら意外と躓くポイントがあったので記録として残しておきます。今回はModelを作ってmigrationする流れについて。
メールのプレビューをブラウザ上で表示できるGEM open_letter
ですが、デフォルトのWSL環境のUbuntuではlaunchy
がエラーを吐いて終了してしまいます。少し設定をしておけば問題なく使えるのですが、毎回その設定方法を忘れてしまうのでメモっておきます。
Rails でObject#present?
やObject#blank?
でArgumentError: invalid byte sequence in UTF-8
が出て少し困ったのでその原因と対処法を残しておきます。
Rubocopを使うと変数と文字列を結合するときにfoo + 'bar'
形式で記述してると式展開を使った"#{foo}bar"
を推奨してくるのですが、foo
の場合がPathname
クラスであっても同様の警告を出してきます。
Selenium::WebDriver.for(:chrome)
の headless のためのオプション設定方法がややこしくてよく忘れるのでメモっておきます。
SeleniumでChromeをheadlessで使おうとすると複数のオプションがあって、バージョンによって必要なオプションが変わるなど面倒なことが山盛りなので、せめて一箇所で設定できるようにデフォルトで読み込むオプション設定を決めることにしました。
ChromeのアップデートのためにChrome本体とChromeDriverの相性問題が出るのが嫌になったのでFerrumを使うことにしました。Macのローカルだとバイナリを探してくれずエラーになったので対処方法を記録しておきます。