¶ ↑
IntroductionThis is a simple gem for Active Admin that just adds support for Date/Time picker.
It supports both ActiveRecord for relational databases and Mongoid for MongoDB schemaless database.
For Time picker widget, see just-time-picker.
¶ ↑
Usage¶ ↑
Code samplesHere comes a quick code sample. Sorry, currently no detailed docs.
That should create nice date/time picker for User#born_at. Associated column in the DB should be nullable.
To delete previously stored date/time just make all fields blank (date, hour and minute).
¶ ↑
Migration (if you use ActiveRecord)class CreateUsers < ActiveRecord::Migration def change create_table :users do |t| t.datetime :born_at t.timestamps end end end
¶ ↑
Model¶ ↑
ActiveRecordclass User < ActiveRecord::Base just_define_datetime_picker :born_at, :add_to_attr_accessible => true validates :born_at, :presence => true end
¶ ↑
Mongoidclass User include Mongoid::Document field :born_at, type: DateTime just_define_datetime_picker :born_at, :add_to_attr_accessible => true end
You must place “mongoid” gem BEFORE “just-datetime-picker” gem in your Gemfile!
¶ ↑
ActiveAdminActiveAdmin.register User do form do |f| f.inputs do f.input :born_at, :as => :just_datetime_picker end f.buttons end end
¶ ↑
Installation¶ ↑
Code itself¶ ↑
GemsThe gems are hosted at Rubygems.org. Make sure you’re using the latest version of rubygems:
$ gem update --system
Then you can install the gem as follows:
$ gem install just-datetime-picker
¶ ↑
BundlerAdd to your Gemfile:
gem "just-datetime-picker"
and then type:
bundle install
¶ ↑
From the GitHub sourceThe source code is available at github.com/saepia/just-datetime-picker. You can either clone the git repository or download a tarball or zip file. Once you have the source, you can unpack it and use from wherever you downloaded.
¶ ↑
Assets¶ ↑
CSSIf you use Rails >= 3.1 AND ActiveAdmin >= 0.5.0 just add this line to active_admin.css.scss
@import "just_datetime_picker/base";
Otherwise, just manually append the code from this file to your CSS stylesheet.
In ActiveAdmin 0.4.x you must strip body.active_admin from CSS declarations.
¶ ↑
JavaScriptIf you use nested set and dynamically create date or date/time pickers, they won’t be active by default due to bug in Active Admin.
To overcome that, if you use Rails >= 3.1 just add this line to active_admin.js
//= require just_datetime_picker/nested_form_workaround
Otherwise, just manually append the code from this file to your JS script.
¶ ↑
Additional info¶ ↑
Versions known to workCode was tested with:
-
ActiveAdmin 0.4.4, 0.5.0 and 0.5.1,
-
formtastic 2.2.1,
-
Ruby on Rails 3.2.8, 3.2.11.
¶ ↑
LicenseThis code is licensed under GPLv3.
¶ ↑
Authors¶ ↑
ChangeLog¶ ↑
0.0.6 (February 23, 2013)-
Fixed nested form workaround - do not use obsolete jQuery live() syntax (Marcin Lewandowski)
-
Allow to set date time to null value (thanks to yaoquan for pointing this out)
¶ ↑
0.0.5 (September 28, 2012)-
Changed dependency of ActiveAdmin 0.5.0 to 0.4.4 (Marcin Lewandowski)
¶ ↑
0.0.4 (September 28, 2012)-
Fixed bug that caused “Invalid date” error if date field was empty which effectively made all date/time picker fields required, even if there were no associated validations (Marcin Lewandowski)
¶ ↑
0.0.3 (September 21, 2012)-
Added mongoid support (doabit & Marcin Lewandowski)
-
Added zh-CN locale (doabit)
-
Refactored gem building stuff (doabit & Marcin Lewandowski)
-
Refactored CSS and JS to use total power of assets pipeline (Marcin Lewandowski)
¶ ↑
0.0.2 (September 9, 2012)-
Fixed bug that caused date/time fields’ validations to always fail on record update if such field was not modified (Marcin Lewandowski)
¶ ↑
0.0.1 (September 7, 2012)-
Initial release (Marcin Lewandowski)