【Rails】Paranoiaを使用した論理削除(ソフトデリート)
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/229/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=81b53b4cc2d3017208db2e695be17ec9d56d01465d1f0d092212ba5b774d0c65)
はじめに
Paranoiaは、Railsアプリケーションで論理削除(ソフトデリート)を実現するためのGemです。
論理削除は、データベースのレコードを物理的に削除するのではなく、削除フラグを設定することで「削除済み」とみなす方法です。これにより、削除されたレコードを後から復元することが可能となり、データの整合性 ...
【Rails】activerecord-multi-tenantを使用したマルチテナントアプリケーションの作成
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/228/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=43708f467e8390ad8a21a4ead21fa78efbf2a95d99a4954e11adf777894bd6f0)
はじめに
マルチテナントアプリケーションでは、複数の顧客(テナント)が同じアプリケーションを利用するため、データの分離が必要です。
activerecord-multi-tenantは、このようなマルチテナント環境をサポートするための便利なGemです。これにより、テナントごとにデータを分離し、セキュリティとパフ ...
【Rails】AASMを使用してオブジェクトの状態遷移を効率的に管理
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/225/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=afa1f3813a34142854613d5a1748f66b97f1eb265cf27e34f64f05eb5c147edd)
はじめに
Railsアプリケーションにおいて、オブジェクトの状態管理は重要な課題の一つです。AASM (Acts As State Machine) gemは、複雑な状態遷移を効率的に管理します。本記事では、AASMの基本的な使い方を解説していきます。
使用方法
セットアップ
まず、Gemfileに以下の行を追 ...
【Rails】RSpec + Swagger + rswagでアプリケーションのAPIをテストおよびドキュメント化する方法
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/224/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=48c8fd040d792cdcc33ff173322e59dce3317d4fe1abf39860f46fff16734f10)
はじめに
Railsアプリケーションの開発において、APIのテストとドキュメント化は重要な要素です。
RSpecはテストフレームワークとして広く利用されており、SwaggerはAPIの設計とドキュメント化を支援します。これらを統合するrswagを使うことで、テストとドキュメントを一貫して管理し、信頼性の高いAP ...
【Rails】mailcatcherを使用して開発環境でメール送信をテストする方法
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/223/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=e8222dd83fd09734a1eb9c3a72c0d3578ff2ca55c5c77f673bce3f94d67c4bb3)
はじめに
mailcatcherは、開発環境でのメール送信をキャプチャするためのツールです。ローカルで送信されたメールをブラウザ上で簡単に確認できるようにします。mailcatcherをRailsアプリケーションで使用する方法について説明します。
mailcatcherの使用方法
Gemfileにmailcat ...
【Rails】impressionistを使用してページビューやクリック数を追跡する方法
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/222/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=3c5d31d64eee3d1163506f2ac7e30f713993b081beccaaf9118f6cb7b44852c4)
はじめに
impressionist Gemを使用してRailsアプリケーションでページビューやクリック数を追跡する方法について説明します。
実装方法
impressionist Gemのインストール
まず、impressionist Gemをインストールします。Gemfileに以下の行を追加しbundle i ...
【Rails】meta-tagsを使用したメタタグの管理
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/221/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=988142f615b03428854cbd86622c64cc486ae0e48da9ddb381fc962740a994ea)
はじめに
RailsアプリケーションでSEO対策を行うために、meta-tags Gemを使用してメタタグを管理する方法について説明します。
メタタグの管理
meta-tags Gemのインストール
まず、meta-tags Gemをインストールします。Gemfileに以下の行を追加しbundle instal ...
【Rails】sitemap_generatorを使用したサイトマップの作成と定期実行
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/220/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=a96579c310a5f03cd22ec5fb8501f28be87d4260a55dfc2d2350fc83d86f6664)
はじめに
Railsでのサイトマップ作成と定期実行について説明します。
サイトマップの作成
Gemのインストール
サイトマップを生成するために、sitemap_generator Gemを使用します。まず、Gemfileに以下を追加しbundle installを実行します。
Gemfile
rb
gem 's ...
【Rails】AirbrakeやSentryを使用したアプリケーションの監視
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/217/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=aeea79308b5135d2ff8f05be4b97f0f2f5d1be476b2e155526ab661fbd469982)
はじめに
エラーは開発者にとって避けられない現実です。しかし、エラーが発生した際にそれを迅速に捉え、適切に対処することがアプリケーションの安定性を維持する鍵となります。
AirbrakeやSentryなどのエラーモニタリングツールを活用することで、Railsアプリケーションの監視が大幅に強化され、ユーザーエクス ...
【Rails】アクセス制御モデルをサポートする認可ライブラリ「CasbinRuby」の導入・使用方法
![](https://autovice.s3.ap-northeast-1.amazonaws.com/uploads/article/picture/197/rails-1.jpg?X-Amz-Expires=600&X-Amz-Date=20240727T072329Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIASDZCAGFGH4Y2EDPG%2F20240727%2Fap-northeast-1%2Fs3%2Faws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=8db3e7833f868d20d0ad856fb77d92e35ae0b1273afeb75d268e9319ea3f826f)
はじめに
Railsで利用できるアクセス制御ライブラリは、「Pundit」や「CanCanCan」というGemが人気でよく使われています。これらと比較するとあまり使われていない印象ですが、「CasbinRuby」というGemも存在します。
今回は「CasbinRuby」の導入・使用方法についてまとめます。
概要 ...
![](/assets/profile-1055d2f9a1a248bf051584d3572c2f2d79d103e956e0fcee48f1cab5cd40472b.jpg)
坂井 光太郎 / Sakai Kotaro
Ruby on Rails を中心とした Web アプリ開発全般に関する技術情報をまとめています。業務に関するご依頼・ご相談、当サイトに対するご感想やメッセージはコンタクトフォームからお気軽にお問い合わせください。