If you want to try Adminium with minimum effort, we've setup for you a sandbox account with some populated data.
Feel free to edit, destroy, add records and customize the interface, everything will be reset within the hour.
In order to use Adminium with your own data, we need to access your database. To retrieve your database url securely and easily, we use Heroku's oauth API to read the
DATABASE_URL configuration variable of your app.
Adminium can be installed to a Heroku application via the CLI:
heroku addons:add adminium:petproject
In order to provide you with an administration interface for your data, Adminium needs to be able to connect to your database. The easiest way to do that is to install and run a plugin for the Heroku command line tool :
heroku plugins:install git://github.com/isc/heroku-adminium heroku adminium
The plugin execution will store an encrypted version of the
DATABASE_URL of your application in the Adminium database. Your
DATABASE_URL is sent using SSL and is never logged in the Adminium application logs. Removing the add-on from your application will delete that info from the Adminium database.
Visit the adminium page on Heroku's marketplace and select a plan and your project.
Go to the resources page of your application and click on your Heroku Postgres database add-on.
Connection settings section, use the button to switch to URL display and copy the connection string.
Adminium doesn’t need to integrate at a code-level and thus isn’t tied to a particular language. It can be used with any app hosted on Heroku, be it Ruby, Node.js, Clojure, Java, Python, or Scala, as long as it makes use of a PostgreSQL or MySQL database.
Sign in and log in in with Heroku's oauth API on adminium.io will list your apps and allow you to easily provision the Adminium Heroku addon on your app. Once logged in with this method, you can easily switch between your apps.
The interface can also be accessed via the CLI, but in this case, you will have only access to this application.
heroku addons:open adminium
Or by visiting the Heroku apps web interface , selecting your application and then selecting Adminium from the add-ons menu.
We rely on Heroku's oauth API to verify your identity and list your apps.
We ask for the
write-protected scope to access your DATABASE_URL configuration variable to connect to your database, and allow you to upgrade or downgrade your addon plan at any time.
By default, you can search on every string, text and integer columns of a table.
You can use the symbol
% in your query string for a simple regular expression.
You can specify which columns should be considered as searchable. Just look for the Searchable columns section in the Listing settings Panel.
There are different ways to edit your records:
In-place editing: in each cells of a record in the listing or view page. You can click on the pencil which appears while hovering or you can simply double click on the cell to start editing the value.
Full page editing: available on the left side of each record on the listing page.
Bulk editing: check several records in the listing page and update them with the same value all at once.
Importing: upload a csv file with the id and new values of each records to update.
You may have columns with reference data, like integer that would be more readable if it was a string. A status code column for example.
To configure an enumerable column, check the Enumerable option in the column setting panel which can be brought up by clicking on the cog icon when mousing over a column's header.
Enumerables are clickable in the listing page to quickly filter results by this value, and a statistical pie of the current query for this column is available at the bottom of the table page.
You can easily export a specific search and download a CSV file. In the listing page, just click on the export button, select the columns you wish to export and other export options.
Your CSV file can be locally modified and imported back if the CSV file contains the id column of your records.
If the id of a record is not specified, a new record will be created.
If your table has too many columns, you can edit which one you want to see in the listing page.
You can reorder them, rename the header column, customize the appareance of the value depending on their type.
For example, date columns can be displayed like:
08 Mar 01:12,
Fri, 08 March 2013 or
37 minutes ago.
Just click on the column header to see your options.
You can also display columns from tables associated to this one or the count of associated rows for 'has many' relations.
If you want to perform a complex query on your table, advanced search will let you add multiple constraints on columns.
You can name and save this search for easy access later. It will appear as a tab on the listing page.
You can also add this view as a widget on the dashboard page by clicking on the star icon.
Do you run a ruby application ? Do you have serialized data stored in some columns ?
If the answer is yes, you should try to activate the serialized option in the column setting.
By default relationships are displayed using the humanized table name and the primary key (for instance
User #37). However you can configure a specific column to be used for labeling these links. You might have for instance a pseudo column on a users table.
To choose the Label column for a table, go to the listing view of the table and click on the cog button. In the modal, you will find a pane titled Miscellaneous, which contains the Label column option.
For any column of type date or datetime you can easily display a time chart by clicking on the time chart icon ( ) that appears while hovering over the header of these columns. This will display a bar chart grouping the records on the specified column. You can choose between different grouping periods.
You can choose to display the resulting graph on your dashboard by using the star icon ( ).
For graphs displayed on the dashboard, you can click on column bars to see exactly all the records that have been aggregated for this particular interval of time.
Keyboard shortcuts help you save time by allowing you to never take your hands off the keyboard to use the mouse.
? in Adminium to see a list of keyboard shortcuts.
Adminium has two settings related to timestamps and time zones that can be found in your Accounts settings.
The Application time zone controls in which time zone timestamps will be displayed and entered throughout Adminium. You would typically set this to the time zone corresponding to the region you live in.
The Database time zone lets Adminium know in which time zone timestamps are stored in your database in case your schema uses a datetime type that doesn't include time zone information. A typical Rails application uses
timestamp without time zone and stores datetimes in UTC so the default value will be fine.
In PostgreSQL, tables are searched by default in a schema named "public".
If you need to access tables in a different schema, you can customize the search path by specifying it in your database URL (Edit Account -> Database Connection pane) :
You can also specify multiple schema names by separating them with a comma :
It is similar in purpose to rails_admin and active_admin.
It is however different in how it operates and thus allows different things. Rails admin and active admin are gems to be used with a Rails 3 application whereas Adminium is an Heroku add-on which can be used with any Heroku application, no matter the Rails version, the framework or even the language.
It also differs in the way it is configured ; rails / active admin use DSLs and thus require to write code and deploy the application to modify the configuration of the admin, whereas all the configuration in Adminium is done via the interface independently of the lifecycle of the target application and also allowing non technical users to be in charge of it.