Sha256: 6913f30b67c792f66f6bea8198474db2e4112682d4889c61c13d5c01b07eee6b

Contents?: true

Size: 1.15 KB

Versions: 3

Compression:

Stored size: 1.15 KB

Contents

require "administrate/base_dashboard"

class <%= class_name %>Dashboard < Administrate::BaseDashboard

  # This method returns a hash
  # that describes the type of each of the model's fields.
  #
  # Each different type represents an Administrate::Field object,
  # which determines how the attribute is displayed
  # on pages throughout the dashboard.
  def attribute_types
    {<% attributes.each do |attr| %>
      <%= attr %>: :<%= field_type(attr) %>,<% end %>
    }
  end

  # This method returns an array of attributes
  # that will be displayed on the model's index page.
  def table_attributes
    attributes
  end

  # This method returns an array of attributes
  # that will be displayed on the model's show page
  def show_page_attributes
    attributes
  end

  # This method returns an array of attributes
  # that will be displayed on the model's form pages (`new` and `edit`)
  def form_attributes
    attributes - read_only_attributes
  end

  private

  def attributes
    [<% attributes.each do |attribute| %>
      :<%= attribute %>,<% end %>
    ]
  end

  def read_only_attributes
    [
      :id,
      :created_at,
      :updated_at,
    ]
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
administrate-0.0.4 lib/generators/administrate/dashboard/templates/dashboard.rb.erb
administrate-0.0.3 lib/generators/administrate/dashboard/templates/dashboard.rb.erb
administrate-0.0.2 lib/generators/administrate/dashboard/templates/dashboard.rb.erb