2019-01-01から1年間の記事一覧
結論 git checkout - で一つ前に操作したブランチに戻れて便利! (知らなかった...) # 最初にいたブランチ ~/w/taskleaf (master|✔) $ # 移動する ~/w/taskleaf (master|✔) $ git checkout add_csv_download_function Switched to branch 'add_csv_download_…
検証環境 Rails 5.1.7 Ruby 2.5.7 結論 Set型の値をto_aで配列に戻してあげないと、配列として解釈してはくれない模様.. # 都道府県モデル class Prefecture < ActiveHash::Base field :name field :english add id: 1, name: 'ほげ県', english: "Hoge" <中…
bundle outdatedコマンド 現在のアプリディレクトリのgemに更新がないかをチェックしてくれるコマンドらしいです!(今日知ったw) RailsやGemのバージョンアップ対応などで、地味に助かりそうな機能だなという感想でした(小並感...) 実際にコマンドを打ってみ…
発生事象 webpackerのgemのバージョンを上げて本番リリースした際に不具合が発生し、revertしてgemのバージョンを戻したところローカルではそれまで正常にコンパイルされてたCSSが正常にコンパイルされなくなってしまいました... なお、エラー文言をメモしそ…
はじめに めちゃめちゃレベルの低い内容ですが、久々で記憶が消滅していたので忘れないためにここに記します。 ちなみにセキュリティソフトによっては 8080のポートが使えない場合があるっぽいので、今回はその対応のためにデフォルトのポートを変更するとい…
経緯 これまで現在の作業ブランチをリモートにプッシュする際は現在のブランチ名を指定してプッシュしていました。 しかし、そんなことをしなくていいということを先日知ったのでここにメモ。 これまで $ git push origin ブランチ名 現在 $ git push origin…
経緯 久々にActiveRecordを業務でいじることになり、あいまい検索の方法を忘れてたのでメモ。 ちなみにmongoidだとこんな感じで正規表現的に書ける。 Model.where(name: /hoge/).to_a 書き方 mongoidに慣れすぎててパッと分かんなかった... key = "Supreme" …
経緯 普段の業務でmongoidというActiveRecordとは異なるORM(正確にはODM)を使っています。 当たり前ですが、ActiveRecordを使用しないRailsアプリではActiveRecordの使用を前提としたRailsの機能を使用することが出来ません。 というわけで、ActiveRecord::E…
経緯 Slack通知処理を直していた際にそのリファクタリングでこれまで環境変数をソースコードの中でセットする書き方からローカル環境で設定された環境変数を読み込んでSlack通知するように変更することになりました。 その際ローカルの動作確認では export S…
近況 最近、突然無性にやりたくなりNuxt.jsの勉強を始めました! という訳でノロノロと勉強したメモを放流します。 asyncDataについて Vue.jsにはdata関数というDOMで扱うプロパティを予め定義しておいてコンポーネント内で使用出来る仕組みがあります。 さ…
経緯 本日とある運用作業中に一部データを誤って欠損させてしまい、 その復旧作業を行いました。 今までこうしたトラブルを起こしたことがなかったため障害報告書といったものをほとんど書いてきませんでした。 そこで今回は今後のために今回やったことを自…
報告 こちらのイベントでLTをしてきました! enechange-meetup.connpass.com 発表 発表資料はこちらです! 要約すると、過去の恥ずかしい負の遺産のようなコードをペアプロでリファクタリングすると学びが深いので、勉強のマンネリ打破にオススメですぞ!っ…
発生した事象 CircleCI上でRSpecを実行するための前準備として bundle exec rails db:create を行う場面で PG::ConnectionBad のエラーが発生してしまっていました。 結論 database.ymlとconfig.ymlの設定内容を確認しましょう。 今回の場合で言うとdatabase…
やり方 公式ドキュメントによるとこんな感じの書き方でフィールドの値の変更をコンソールで確認出来るみたいです。 user.name = "hoge" => "hoge" user.changed_attributes => {"name"=>"hoge"} saveされると消えるっぽい。 user.save user.changed_attribut…
基本構文 そういえばmongoidでOR条件どうやるんだっけ? そんな私の今日のメモ Model.any_of({フィールド: 条件}, {フィールド: 条件}) 使用例 良い例が思い付かなかった... # クーポンが適用されていない or クーポンの期限が切れていない Coupon.any_of({a…
自己紹介 どうも初めまして! Tama.rbという地域Rubyコミュニティで オーガナイザーをしているfuqda(ふくだ)です! 先日のTama Ruby会議01というカンファレンスではイベント主催者として色々動いておりました。 ここでは今更ながら、そのイベントに関して主…
このコマンド知らんかった... bundle cleanup というコマンドを打つとローカルのbundle install先の使われていないGemを綺麗に削除してくれるそうな... Deploy用の踏み台サーバーで無駄にディスク容量を食ってそうなゴミファイルの掃除をした際に知りました.…
行って来た! こちらのイベントに参加して来ました! handsons.doorkeeper.jp 来たかったけれどキャンセルすることになってしまった方が自分の周りにいたので、可能な限りやったことを詳細に書き起こせればと思います。 なお私自身の理解の甘さで不備がある…
はじめに mrubyから入るシステムプログラミング入門 に参加するための事前環境構築を行いました! ちなみに、その手順リポジトリはこちらです。 github.com 振り返りがてら行なった内容を記します!! ※ ハンズオン当日の実施内容を記した記事はこちら 以下…
mongoidに纏わる誰の役にも立たない内容 本番でコンソールに入ってスクリプトを打つときについ忘れがちですが、 データ更新を行わないスクリプトを実行する場合はslaveを見るように指定するのが肝要です。 slaveを見るために必要なコード ※ 以下の例では mon…
結論 以下のようにすればOKです! $ git grep "キーワード" | pbcopy 用途 私の場合は、とある事情でサービス内の特定のリンク先の死活状況を調べるためにキーワードでgrepしてその結果をリストアップしたいという用途で使いました。 pbcopyとは? Macに標準…
結論 fish シェルは何かを打ち始めるとデフォルトで予測変換を行います。 何かを打った際にその状態で Ctrl + P を打てば、その時点で入力されたキーワードの部分一致で過去に打ったコマンドを検索することが出来ます。 例 fishと入力する (動画撮るのめんど…
情けない... 滅多にサーバーでゴニョゴニョ作業をしないので 本日、久々に作業をすることになり Linuxコマンドの習熟度の低さが露わに... ファイルの行数だけ出したい 以下のコマンドでファイルの行数がわかります。 今回はサーバーで実行したスクリプトから…
前提 BlogモデルとUserモデルがある BlogはUserにbelogs_toの関係 Blogのデータに対してUserが存在するデータだけを検索したい場合 落とし穴 mongoidの Blog.where(user: { '$exists' => true } は フィールドが存在したら無条件で値を取ってきてしまうので…
本日の気付き 会社でフロントエンド・エンジニアチームの人々のこんな会話を耳にしました。 export default で オブジェクトを返すやり方は、 webpackのtree shaking ができなくなって、 結果パフォーマンスに悪影響がある フロントエンド人間ではないので何…
今回の結論 Railsのgemに用意されたコマンドからジェネレートされるファイルのデフォルトで書かれている英文のコメントは何も考えずに削除しない方が幸せになれますよ!という話です。 もっと詳しく 例えば、RSpecの初期ファイルにはRSpecの仕様に関する重要…
nokogiriのインストールで死ぬ問題 とあるアプリでbundle installしようとしたところ... $ bundle install --path vendor/bundle <中略> Fetching nokogiri 1.9.1 Installing nokogiri 1.9.1 with native extensions Gem::Ext::BuildError: ERROR: Failed to…
Vee Validateって? Vue.js公式バリデーションライブラリです。 https://baianat.github.io/vee-validate/ 知らんかった... Vee Validateでイベント指定してバリデーションの発火タイミングをコントロール出来るなんて... こんなの普通に考えたら、そういう…
前提 Docker for Macを使用している RailsアプリのミドルウェアだけをDocker化している /provisioningディレクトリを作り、そこにdocker-compose.ymlを配置している dockerコマンドはdocker-compose.ymlを配置したディレクトリで実行 概要 Dockerを使って起…
概要 先日のブログで書いた内容の経過報告です。 fuqda.hatenablog.com PR送った結果 先日mongoidに送ったプルリクエストが無事にマージされました。 github.com 所感 今回マージされたリポジトリには明確なコントリビューションガイドは無かったのですが、…