$ gem install kitsune --source http://gems.github.com
$ script/generate kitsune --include-page-model
Other options supported:
--without-page-model
Exclude Page Model
--without-user-model
Exclude User Model
--versioned
Setup versioning for ActiveRecord, will need vestal_versions preinstalled
$ rake db:migrate
$ script/server
Then go to:
http://localhost:3000/admin/kitsune
Lo and behold, admin UI is automatically created for all models defined in the rails application.
Cherry pick from the commands below to add functionality to the admin interface:
display, edit, display_and_edit, no_menu, name, category, order_by, disable,sortable, file, image, multipart, select, string, text, sit, no_edit
@class Product < ActiveRecord::Base has_and_belongs_to_many :product_categories has_many :product_photos has_many :voltage_ratings
admin do display_and_edit :short_name edit :long_name, :product_category_ids, :description, :overview, :features, :order wysiwyg :description wysiwyg :overview wysiwyg :features collection_select :product_category_ids, ProductCategory.all, :id, :title, {:include_blank => true}, {:multiple => true} end
def self.search_results(keywords) Product.all(:conditions => ["(products.short_name like :search or products.long_name like :search or products.description like :search)", {:search => "%#{keywords}%"}]) end
def to_param "#{id}-#{short_name.gsub(/[^a-z0-9]+/i, '-')}" end end@
And that is how you do it.