Source
/controllers/users_controller.rb
class UsersController < DemoController
active_scaffold :user do |config|
config.columns = [:id, :name, :photo, :first_name, :middle_name, :last_name, :phone_number, :email_address,
:login, :password, :roles, :aliases, :addresses]
config.columns[:phone_number].description = "(Format: ###-###-####)"
config.columns[:phone_number].label = "Phone"
config.create.columns.exclude :id, :name
config.update.columns.exclude :id, :name
config.list.columns.exclude :first_name, :middle_name, :last_name, :password, :phone_number
config.subform.columns = [:first_name, :last_name, :login, :password]
config.list.sorting = {:login => 'ASC'}
config.nested.add_link "Names", [:aliases]
config.create.columns.exclude(:first_name, :middle_name, :last_name, :phone_number)
config.create.columns.add_subgroup "Personal Data" do |group|
group.add(:first_name, :middle_name, :last_name, :phone_number)
end
end
end
/models/user.rb
class User < ActiveRecord::Base
has_and_belongs_to_many :roles
has_many :aliases, :dependent => :destroy
has_many :addresses, :as => :addressable
validates_presence_of :first_name, :last_name
file_column :photo#, :magick => {
# :versions => {
# :thumb => {:size => "40x40"}
# }
# }
validates_filesize_of :photo, :in => 0..25.kilobytes
def name
last_name.nil? ? first_name : first_name + " " + last_name
end
end
/helpers/users_helper.rb
module UsersHelper
include DemoHelper
end