7839

雑草魂エンジニアブログ

Ruby

【Ruby】cairoで画像作成を実装する(画像にスタンプと文字を追加する)

Railsアプリケーションにおいて、バックエンド側で以下のような画像作成をしたいと思い、サンプルアプリケーションを作ってみたので備忘録として残しておく。 ラジオ体操のスタンプみたいw Ruby : v3.1.2 Ruby on Rails : v7.0.3.1 Ruby/Railsでどのライブラ…

【Docker】node_module の volume 設定に関して(Rails / ruby,node環境)

RailsのDocker開発環境を構築している際に、node_module の volume 設定が上手くいかず、改めて Docker について調べた内容を備忘録として残しておく。 結論:Dockerfile, docker-compose.ymlの設定 コンテナ内のnode_modulesが消える ホスト側のnode_module…

【Rails】Faraday2.0を使う

Railsアプリケーションで外部APIを使う場合に、導入していた Faraday。v1からv2にアップデートしており、保守性を考慮して少し仕様が変わっていた。Faradayの使い方を備忘録として残しておく。 Ruby:v3.0.1 Ruby on Rails : v6.1.3.2 Faraday : v2.3.0 Fara…

【Rails】ControllerからRakeタスクを実行する

バックエンド側で定期実行しているRakeタスクをフロントエンド側から任意のタイミングで実行したくなった。そのために、RailsアプリケーションのControllerからRakeタスクを実行する方法を検討したので備忘録として残しておく。 Ruby:v3.0.1 Ruby on Rails …

【Rails】camelCase⇆snake_caseの変換

今回は久しぶりのRailsアプリケーション開発。 社内の一部業務の自動化のために簡単なアプリケーションを前任者から引継ぎ、一部改良を行った。構成はバックエンドがRuby on Railsで、フロントエンドがNuxt.jsの構成だ。 インターフェースとしてAPIを実装す…

【Rails】devise_token_authでToken認証を実装する

結構前にやったことであるが、Rails6でAPIを作成した際に、認証機能を簡単に実装できるdevise_token_authを使ってToken認証機能を実装したので備忘録として残しておく。 実行環境 Ruby : 3.0.1 Ruby on Rails : 6.1.5 devise_token_auth : 1.2.0 rack-cors :…

【Ruby】begin ~ rescue ~ end 例外処理

Railsアプリケーションで、複雑な処理を実装しようと思うと、例外処理の実装が不可欠となる。Rubyで例外処理をどのように実装するか、(毎回確認している気がするのでw)備忘録として残しておく。 例外処理 raise rescue (おまけ)一定回数retryさせる まとめ…

【Rails】Sidekiq 〜ジョブがスタックしたので、複数プロセスで対応

自動復旧できるシステムが構築したくて、Railsで簡易的なアプリケーションを開発した。その際に、バックグラウンドジョブを実行するために、Sidekiqを使った。ただ、バックグラウンドジョブがスタックすることがあったので、調べたことを備忘録として残して…

【Rails】DB を使わずに、jsonファイルで簡易ユーザー管理機能を実装する

ある Rails アプリケーションにおいて、下図のように、1つの DB を複数のアプリケーションが参照する場合がある。(ただし、複数のアプリケーションから、自由に DB の書き込みができるのではなく、1つのみに Read/Write 権限を持たせて、その他は Read 権…

【EC2】Rails5 環境構築(Ruby + MySQL5.7 + Node.js + Nginx)

最近、全く更新できていなかった。。。 今年やったことは今年のうちに。自分の棚卸しも兼ねて、一気にアウトプットしていきたいと思う。 今回は、AWSのEC2に、Railsアプリケーションをデプロイするにあたり、毎回調べていたので、備忘録として環境構築方法を…