ローコード管理パネルとビジネス インテリジェンス Rails エンジン(DSL なし - UI から構成可能) 。
?デモアプリ | ?機能の概要 |プロ
次の行をアプリケーションの Gemfile に追加します。
gem 'motor-admin'
そして、以下を実行します。
$ bundle install
移行を作成して実行します。
$ rails motor:install && rake db:migrate
管理パネルのすべては、右上隅のアイコンから開くことができる直感的な設定 UI を使用して構成できます。
リソース ページに表示されるデータは、SQL クエリとタブとしてリソースにアタッチされたダッシュボードを介して完全にカスタマイズできます。通常、リソース データの表示に使用されるクエリには{{resource_name_id}}
変数が含まれている必要があります。
リソースのカスタマイズについて詳しく見る
カスタム リソース アクションは、Active Record メソッド呼び出し、API エンドポイント、またはカスタム フォームを介して追加できます。また、デフォルトの作成/更新/削除アクションをオーバーライドすることもできます。
ActiveRecord モデルのメソッドまたは属性は、リソース モデルのメソッド名と一致する名前の新しい列を追加することで管理パネルに公開できます。
class Customer < ApplicationRecord
has_many :orders
def lifetime_value
orders . sum ( & :total_price )
end
end
フォーム フィールドの値は{field_name}
構文/api/some-endpoint/{resource_id}/apply
介して API パスで使用できます。
カスタム フォーム ビルダーについて詳しく見る
クエリには、 {{variable}}
構文 (mustache) を介して埋め込み変数を含めることができます。 {{#variable}} ... {{/variable}}
構文を使用すると、スコープ内の条件をクエリに含めるかどうかを決定できます。
SQL クエリからのデータは、表、数値、折れ線グラフ、棒グラフ、円グラフ、ファネル、マークダウンとして表すことができます。
SQL クエリをダッシュボードに編成して、データの便利な表現を作成できます。
アラート機能を使用して、クエリ データを電子メールで定期的に送信できます。アラート電子メールの間隔は、自然言語を使用して指定できます。たとえば、 every day at midnight
、 every Monday at 8 PM
、 every weekday at 6AM and 6PM
、 every minute
。
送信者のアドレスは、 MOTOR_ALERTS_FROM_ADDRESS
環境変数を使用して指定できます。
インテリジェンス検索は、右上隅のボタンまたはCmd + Kショートカットを使用して開くことができます。
Motor Admin を使用すると、cancan gem を介して行レベルおよび列レベルの権限を設定できます。管理者 UI 権限は、 Motor::Ability
クラスのapp/models/motor/ability.rb
ファイルで定義する必要があります。ユーザー権限を定義する方法については、Motor Admin ガイドと CanCan のドキュメントを参照してください。
Motor Admin は、Active Storage のstorage.yml
ファイルで構成したプロバイダーへのアップロードを実行するようにデフォルトで構成されています。 Motor Admin 内で大規模なアップロードを使用している場合は、次の ENV 変数を設定して直接アップロードを有効にする必要があります。
MOTOR_ACTIVE_STORAGE_DIRECT_UPLOADS_ENABLED=true
注: 現時点では、これにより直接アップロードがグローバルに有効になります。
Motor Admin は、Rails ActiveRecord i18n キーを使用してリソース変換をレンダリングできます。
es :
activerecord :
models :
customer :
one : Cliente
other : Clientes
attributes :
customer :
name : Nombre
scopes :
customer :
enabled : Activado
すべての管理パネル設定は、 config/motor.yml
ファイルに自動的に保存されます。さまざまなローカルおよびリモート環境間で管理パネルの構成を常に同期させるために、このファイルをアプリケーション git リポジトリに含めることをお勧めします。
rake motor:sync
タスクを介して、ローカル開発管理パネル構成をリモート実稼働アプリケーションと同期することができます。
MOTOR_SYNC_REMOTE_URL=https://remote-app-url/ MOTOR_SYNC_API_KEY=secure-random-string rake motor:sync
MOTOR_AUTH_USERNAME
およびMOTOR_AUTH_PASSWORD
環境変数を指定することで、管理パネルを「基本認証」で保護できます。
あるいは、デバイスまたはアプリケーションで使用されるその他の認証ライブラリを使用してセキュリティを保護することもできます。
authenticate :admin_user do
mount Motor :: Admin => '/admin'
end
Webpack 開発サーバーを起動します。
yarn install && yarn serve
開発データベースをセットアップします。
rake app:db:create && rake app:db:setup
サンプル アプリケーションを開発モードで開始します。
MOTOR_DEVELOPMENT=true rails s
Motor Admin は MIT ライセンスに基づいてライセンスされています。