😎

Rails Adminよりローコードで管理画面を開発した方が良い理由

2024/01/17に公開

Ruby on Railsでアプリケーションを開発している場合、Rails Adminで管理画面を作ることが多いと思います。

今回は、Rails Admin以外の選択肢として、ローコードでの管理画面開発についての話をしていきます。

今から管理画面開発をしようと検討している方の参考になれば幸いです。

この記事を書こうと思った背景

私はローコードで管理画面を構築できる『クエリア』を作っています。

私自身もエンジニアなので、世の中のエンジニアには、メインのプロダクト開発に100%のリソースを使っていただきたいという思いでクエリアを開発しています。

最近では、最近はお客様も増え、良いフィードバックをいただける機会も増えてきました。

その中で、Rails Adminなどのフレームワークを利用するよりも、ローコードで管理画面や社内ツールを開発したほうが便利になる可能性があるということを、もっと多くの方に知っていただきたいと思ったのが、この記事を書こうと思った経緯です。

認証や権限管理の実装を省略できる

Rails Adminなどのフレームワークを使う際に、意外と面倒で頭を使うのが、認証と権限管理です。有名所だと、認証は devisesorcery 、認可は cancancan などを使うことが多いと思います。

こういったライブラリもある程度自前でロジックを組む必要があります。

特に権限管理はちゃんと作ろうと思うと、かなり大変な実装となります。社内ツールですので、データを誰に見せるべきか、誰に見せてはいけないのかなどをしっかりとハンドリングするのはとても大変です。

クエリアであれば、権限管理の機構がすでに備わっているので、GUIから操作するだけで簡単に権限管理を行うことができます。

また、グループごとの権限管理も可能で、エンジニアチーム、CSチーム、営業チームなど、チームを設定して一括で権限を付与することもできるため、安全に管理画面を運用していただくことができます。

HTML/CSS, React, Vueなどの知識は一切必要ない

Rails Adminをどのように利用するかにもよりますが、純粋なCRUDだけではなく、メールの送信などCRUD以外の機能を追加していく際に、少なくともHTML/CSSの知識が必要になってきます。

しかし、クエリアであればドラッグ・アンド・ドロップですでに用意されたコンポーネントを配置できるので、フロントエンドの知識は一切必要ありません

また、コンポーネントの再配置も容易にできるため、メンテナンス性も高く保つことが可能です。

ロジックは自由度高く、直感的に開発できる

Rails Adminをちょっとカスタマイズしようと思うと、一気に複雑性が増してしまいます。
もちろん、出来ないことはほとんど無いですが、カスタムコードが増えていけばいくほど属人化し、誰もメンテナンスすることが出来なくなってしまいます

一方で、多くのノーコード/ローコードツールは、直感的に操作ができるものの、カスタマイズ性が低く、実現したいことが実現できないということがあります。

クエリアでは、その課題を解決すべく、ロジックについては自由度高く実現していただけます。複数のアクションを組み合わせたロジックを組み上げたり、JavaScriptを記述して簡単な業務ロジックなども記述できる機構を用意しています。

また、REST APIGraphQLとの連携にも対応しているため、自前のAPIなどを作ればどんなロジックでも実行できるように設計されています。

煩雑になりがちなページ管理も直感的に管理できる

テーブル数が多くなってきたり、管理画面の機能が多くなってくると、ページ管理やナビゲーションの管理が煩雑になってしまうことが多くあると思います。

クエリアでは、ページをドラッグ・アンド・ドロップでフォルダリングしたり、並び替えたりすることができるため、日々の管理画面のアップデートに合わせて簡単に管理をすることができます。

また、ページのフォルダ構造がそのまま管理画面のナビゲーションに適用されるので、ナビゲーションを別途管理する必要はありません。

さいごに

今回は、ローコードで管理画面を開発するとどう便利になるのかという話をしてきました。

特に、急成長中のスタートアップは、組織の変化や事業の成長によって社内ツールというものをアップデートしつづけないといけないため、ローコードがよりマッチするのではないかと思います。

もちろん、管理画面を開発する状況によって適切な開発手法は異なります。ぜひ、管理画面開発の新しい方法の一つとしてローコードも検討してみてはいかがでしょうか。

クエリア

Discussion