Skip to content

Save time and headaches, and create a more easily maintainable set of pages, with ActiveScaffold. ActiveScaffold handles all your CRUD (create, read, update, delete) user interface needs, leaving you more time to focus on more challenging (and interesting!) problems.

License

Notifications You must be signed in to change notification settings

activescaffold/active_scaffold

Repository files navigation

Overview

Build status Code Climate Test Coverage Gem Version Inline docs License: MIT

ActiveScaffold provides a quick and powerful user interfaces for CRUD (create, read, update, delete) operations for Rails applications. It offers additonal features including searching, pagination & layout control. Rails >= 6.1.0 is supported, ruby >= 3.0 required.

Branch Details

master supports rails >= 6.1.x and <= 7.2.x, and ruby >= 3.0.0
3-7-stable supports rails >= 5.2.x and <= 7.1.x, and ruby >= 2.5.0

These versions are not supported anymore:
3-6-stable supports rails >= 4.2.x and <= 6.1.x, and ruby >= 2.3.0
3-5-stable supports rails >= 4.0.x and <= 5.1.x, and ruby >= 2.0.0
3-4-stable supports rails >= 3.2.x and <= 4.2.x, and ruby >= 1.9.3
3-3-stable supports rails 3.2.x and ruby >= 1.8
rails-3.2 supports Rails 3.1 & 3.2, and is the current source of the 3.2.x line of gems.

Quick Start

To get started with a new Rails project

Added to Gemfile

gem 'active_scaffold'

Add jquery-rails to Gemfile, or handle jquery with other tools like webpack or importmap. Also it's possible to load jquery in your layout before application.js using CDN (e.g. jquery-rails-cdn). You can replace @rails/ujs with jquery_ujs, although @rails/ujs should work (never load both).

gem 'jquery-rails'

For rails 7.x, install generator will add active_scaffold to config/importmap.rb, app/javascript/application.js, and active_scaffold/manifest.js to app/assets/config/manifest.js. It will add jquery and jquery_ujs to all the 3 files if jquery-rails gem is available.

For rails 6.1, install generator will create app/assets/javascripts/application.js, add it, and active_scaffold/manifest.js, to app/assets/config/manifest.js and add javascript_include_tag in layout, as ActiveScaffold doesn't work with webpack. It will add jquery to app/assets/javascripts/application.js too if query-rails gem is available, although Jquery may be loaded by packs too and it will work, it won't add jquery_ujs or @rails/ujs as it's added to app/javascript/packs/application.js by default.

Run the following commands

bundle install
rails g active_scaffold:install
rails db:create
rails g active_scaffold:resource Model [attrs]
rails db:migrate

Run the app and visit localhost:3000/<plural_model>

It's recommended to call clear_helpers in ApplicationController, as some helpers defined by ActiveScaffold, such as active_scaffold_enum_options, options_for_association_conditions, association_klass_scoped, are usually overrided for different controllers, and it may cause issues when all helper modules are available to every controller, specially when models have associations or columns with the same name but need different code for those overrided helper methods.

Threadsafe

Threadsafe is enabled always since 4.0, and it can't be disabled.

Configuration

See Wiki for instructions on customising ActiveScaffold and to find the full API details.

Credits

ActiveScaffold grew out of a project named Ajaxscaffold dating back to 2006. It has had numerous contributors including:

ActiveScaffold Gem/Plugin by Scott Rutherford (scott@caronsoftware.com), Richard White (rrwhite@gmail.com), Lance Ivy (lance@cainlevy.net), Ed Moss, Tim Harper and Sergio Cambra (sergio@programatica.es)

Uses DhtmlHistory by Brad Neuberg (bkn3@columbia.edu) http://codinginparadise.org

Uses Querystring by Adam Vandenberg http://adamv.com/dev/javascript/querystring

Uses Paginator by Bruce Williams http://paginator.rubyforge.org/

Supports RecordSelect by Lance Ivy and Sergio Cambra http://github.com/scambra/recordselect/

License

Released under the MIT license (included)


A ruby translation project managed on Locale that's open to all!

Contributing to active_scaffold

  • Edit the translations directly on the active_scaffold project on Locale.
  • That's it!
  • The maintainer will then pull translations from the Locale project and push to Github.

Happy translating!

About

Save time and headaches, and create a more easily maintainable set of pages, with ActiveScaffold. ActiveScaffold handles all your CRUD (create, read, update, delete) user interface needs, leaving you more time to focus on more challenging (and interesting!) problems.

Resources

License

Stars

Watchers

Forks

Packages

No packages published