気ままに気ままのエンジニアブログ

定期的に得た知見を気ままに発信中

【Rails】バッチファイル(rake task)作成手順について

こんにちは。家の作業場が外並みに寒い。。どうもハチマキです。 はじめに 自動配信メール作成に伴い、バッチ処理を実装しました。 Railsのバッチ処理を書く際によく使われる rails runner rake task sidekiq の中でも、今回はrake taskのビルドタスクバッチ…

「タスク管理アプリ」すら作れなかった未経験エンジニアが1年を経てできるようになったこと。

こんにちは。今年最後の日となりました。 本日は1年のふりかえりを行い、来年に向けて士気を高めていきたいと思います。どうもハチマキです。 はじめに 本日が今年最後の日です。今年1年間をふりかえると、今までにないくらい変化がたくさんあったように感じ…

【Rails/Rspec】expected: 1 got: 0の原因は「日付」の記述方法だった!

こんにちは。今年も残り1日。今年に悔いはない!来年よお主を待ている。どうもハチマキです。 はじめに rspecのテスト記述をしていて、ローカル環境ではテストが通るのに、Travis CIで落ちました。 この原因特定に結構時間をさいたので、誰かのソリューショ…

【heroku】作業中ブランチをHerokuにデプロイする方法

こんにちは。本日を持ち、今年の仕事納めとなりました。どうもハチマキです。 はじめに 現場でもそうですが、基本的に新しく作成した機能や改修を直接本番環境にデプロイすることはありません。 一度検証環境等で動作確認を行い、問題なければ本番環境へデプ…

【Rails/migrate】Mysql2::Error: Duplicate column nameの解決方法

こんにちは。私、末端冷え性で年がら年中、手先、足先が冷たい。どうもハチマキです。 はじめに rails db:migrateする際に、Mysql2::Error: Duplicate column nameエラーが発生し、migrateが出来ない問題が発生しました。今回はこの解決方法に関して書いてい…

【Rails】特定のマイグレーションファイルのみを実行する

こんにちは。寒さにより、日に日に朝起きられなくなってきていますが、そんな時におすすめな行動は、起きた瞬間(トイレにも行かず)に外直行。秒で目覚めます。どうもハチマキです。 はじめに rails db:migrateする際に、いくつかStatusがdownにあり、特定…

【Rails/devise】curennt_user.adimin?を使ったらundefined method `admin?' for nil:NilClassのエラーが発生したので、解決していく

こんにちは。最近のマイブームは、朝にバナナ。どうもハチマキです。 はじめに deviseを使って、ユーザログイン、登録機能を実装した時のお話です。投稿フォームの表示を「ユーザがadminユーザの場合にのみ」表示させたいという状況がありました。 その際に…

【gogoleアナリティクス】探せど探せどトラッキングIDが見つからないを解決する

こんにちは。もう今年も終わりますね。 年明けと同時に私もエンジニアになって1年が経過するという嬉しいニュースです!どうもハチマキです。 はじめに 自作したWebアプリにgogoleアナリティクスを入れたいと思い、色々ググってました。 導入までは手順3つほ…

【Rails/enum】ArgumentError ('0' is not a valid section):エラーの解決方法

こんにちは。気がついたら記念すべき50投稿目の記事でした。 誰かのソリューションになってれば嬉しい!そんなことを思った寒い日の夜。どうもハチマキです。 はじめに 今回は、formでselectできるようにするため、enumを定義しました。 その際に発生したArg…

【heroku/Rails】「You might need to specify "USING opponent::integer"」エラー。カラムを変更するだけでは解決できなかった話

こんにちは。もうすぐクリスマス。今年もウキウキしたいと思います。どうもハチマキです。 はじめに このエラーの解決方法はいくつかググるとヒットしましたが、それらでは解決できず、解決するのに結局数日を費やしました。。辛かった。。 同じ境地に立って…

【Rspec/エラー】Unable to find Mozilla geckodriver.の解決方法

こんにちは。最近間食が増えました。どうもハチマキです。 はじめに Rspecテスト時に発生したこのエラー。結構ググりましたが、なかなか解決できず苦戦しました。 今回はその解消方法について書いていこうと思います。では早速行きましょう! 本日の概要 : U…

【Rspec/エラー】NameError: uninitialized constant Pry::Command::ExitAllの解決方法

こんにちは。年々寒さに打たれ弱くなっております。どうもハチマキです。 はじめに Rspecテストでbinding.pryを使いたいときに発生したこのエラー。 解決方法について書いていこうと思います。では早速行きましょう! 本日の概要 : NameError: uninitialized…

【heroku】「Everything up-to-date」が出て、デプロイできないときの解決方法

こんにちは。最近JavaScriptを触りました。難しい。。どうもハチマキです。 はじめに 今回は、herokuにアプリケーションをデプロイした際に発生したエラーにハマったため、その解消方法について書いていこうと思います。では早速行きましょう! 本日の概要 :…

【Rails】VCRでハマったエラー「VCR::Errors::UnhandledHTTPRequestError:」の解決方法

こんにちは。この世の匂いの中で一番好き!と言っても過言でない金木犀。 ついに金木犀の香りミストを購入してしまいました。 家に振りまいてやろうと思います。どうもハチマキです。 はじめに 今回VCRを使った際のエラーに結構ハマってしまいました。 エラ…

Gulp導入時に発生したエラーを解決していく

こんにちは。今日から異様に寒くなりました。 でも暖房はまだつけない!負けない!どうもハチマキです。 はじめに CoffeeScriptをコンパイルする作業が必要だったため、コンパイルを自動化するgulpを導入しました。 今回導入にあたり、いくつかエラーが発生…

GitHubのリポジトリからローカル環境にgit cloneする方法

Git

こんにちは。今年もあと2ヶ月ちょいで終わります。 歳のせいなのか本当に一年が秒で終わっていきます。。どうもハチマキです。 はじめに 新しいPJや再度Git Hubからコードを落としたい時などによく使うgit clone。 今回はこの手順に関して書いていきたいと思…

HTTPとHTTPSの違いは?結局どっちを使うべきなの?

こんにちは。キンモクセイの匂いが消えてきたと同時に秋も過ぎ去ってしまうのでしょうか。どうもハチマキです。 はじめに 来年の基本情報試験に向けて現在勉強中で、セキュリティに関する項目を学ぶ機会がありました。 Webエンジニアでありながら、普段使っ…

【MySQL/エラー】`connect': Can't connect to MySQL server on '~~' (Mysql2::Error)の解決方法

こんにちは。キンモクセイの匂いがしてきました。あ〜幸せダァ!どうもハチマキです。 はじめに 今回は、MySQLのエラー解決法に関してです。 エンジニアになりたての時は、なかなか解決できないエラーでしたが、今思えば簡単なエラーでした。日々成長を感じ…

【勉強会】Cookieとは?Sessionとは?なぜ必要なの?

こんにちは。シルバーウィークも終わり、もう秋に突入しました。 待っていたよ!Autumn!どうもハチマキです。 はじめに Webエンジニアなら知っておくべきSessionとCookie。 そもそもちゃんと理解を深めていなかったので、今回勉強会に参加しました。 ここで…

【勉強会】ロジカルシンキングで重要なことを個人的に振り返る

こんにちは。最近もっぱら外で飲むことがなくなりました。寂しい!から飲みたい!どうもハチマキです。 はじめに ロジカルシンキングを身につけましょう!よく社会人になるとこの言葉をよく耳にします。私も新卒の時は、耳にタコが出来るくらい言われ続けま…

【spec】factory dateの一部を変更したテストの書き方

こんにちは。最近1週間が秒で終わります。もう29歳なので年でしょうか。。どうもハチマキです。 はじめに 先日deviseを実装し、factoriesのUserモデルスペックに「confirmed_at Time.now」を定義しました。 こう定義することで、すでに本登録済み状態となり…

【Rails】ポップアップ(確認ダイアログ)を表示する

こんにちは。最近モンスターを飲み始めてから、目覚めが悪くなりました。どうもハチマキです。 はじめに ポップアップを表示する際にどうやって表示するんだろ?と思ったため、その方法について今回書いていきたいと思います。▽イメージはこちら。 実装前は…

【Rails】devise「メール認証機能」の仕組みについて

こんにちは。やっと夏が来たと思いきやもう秋ですね。今日から栗開きです!どうもハチマキです。 はじめに 今回新たにdevise機能を実装してみました。 deviseの実装方法の記事は色々あったため、今回はデータの流れからdeviseの仕組みを読み解いていきたいと…

【spec / capybara】セレクトボックスなどの要素を評価したい場合のテスト方法

こんにちは。腰の痛みを軽減させるためにマッサージ機を当て続けたら痛みが倍増しました。どうもハチマキです。 はじめに 今回はrspecの振る舞いテストで、下記のようなselectの値が選択されているかというテストを書きたい!けど、エラーが出ました。 ググ…

【Rails】入力確認フィールドの実装方法

こんにちは。今年はまだ台風が来ていなく幸せを感じております。 どうもハチマキです。 はじめに 入力確認の実装方法をまた一つ学んだため、忘れないうちに書いていきます。 本日の概要 : 入力確認フィールドの実装方法 事象 ユーザ登録などで、メールアドレ…

入力フォームでよく見るコピペ禁止の実装方法

こんにちは。もう8月も終わりますね。なんか寂しくなります。どうもハチマキです。 はじめに 入力フォームなどで、コピペを禁止する方法について書いていきます。 ある3つを定義するだけで、簡単にコピペ防止ができます。 本日の概要 : 入力フォームのコピペ…

【git】git pushがrejectedされた時の解決方法

こんにちは。なんかすでに秋風の涼しさを感じた日がありました。どうもハチマキです。 はじめに git push時に発生したrejected(エラー)を初めて解決した時に結構苦戦したので、 同じ境地に立たされている方のソリューションになればと思います。 結論!めち…

【Rails】 Called id for nil, which would mistakenly be 8 -- if you really wanted the id of nil, use object_id Rails.root:~の解決方法

こんにちは。昨日は、蝉の音を聴きながらそうめんを食べ、真夏を全身で感じてました。どうもハチマキです。 はじめに 業務で発生したエラーですが、解決方法の記事を探すのに若干手こずったためメモを書いていきたいと思います。 本日の概要 : Called id for…

【rspec / capybara】RuntimeError: Must pass a hash containing 'with'の解決方法

こんにちは。この暑させっかく夏好きになったのに、もはや嫌いになりそう。どうもハチマキです。 はじめに 業務で発生したエラーのメモを書いていきます。 忘れないうちのメモメモっと。 本日の概要 : RuntimeError: Must pass a hash containing 'with'の解…

【rspec】Ambiguous match, found 2 elements matching option "hoge"の解決方法

こんにちは。夏の台風だけはやめてくれ。日々そう願っております。どうもハチマキです。 はじめに 業務で発生したエラーのメモを書いていきます。 忘れないうちのメモメモっと。 本日の概要 : Ambiguous match, found 2 elements matching option "hoge"の解…