Skip to content

Commit

Permalink
fix railsadminteam#1425 datetime field value disappears in forms
Browse files Browse the repository at this point in the history
  • Loading branch information
bbenezech committed Dec 4, 2012
1 parent ec94568 commit a50a037
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
2 changes: 1 addition & 1 deletion lib/rails_admin/config/fields/types/datetime.rb
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ def parse_date_string(date_string)
end

def formatted_date_value
value = bindings[:object].new_record? && self.value.nil? && !self.default_value.nil? ? self.default_value : nil
value = bindings[:object].new_record? && self.value.nil? && !self.default_value.nil? ? self.default_value : self.value
value.nil? ? "" : I18n.l(value, :format => localized_date_format).strip
end

Expand Down
18 changes: 18 additions & 0 deletions spec/rails_admin/config/fields/types/datetime_spec.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
require 'spec_helper'

describe RailsAdmin::Config::Fields::Types::Datetime do
describe 'formatted_date_value' do
it 'gets object value' do
expect(RailsAdmin.config(FieldTest).fields.find{|f| f.name ==:datetime_field}.with(object: FieldTest.new(datetime_field: DateTime.parse('02/01/2012'))).formatted_date_value).to eq 'January 02, 2012'
end

it 'gets default value for new objects if value is nil' do
RailsAdmin.config(FieldTest) do |config|
field :datetime_field do
default_value DateTime.parse('01/01/2012')
end
end
expect(RailsAdmin.config(FieldTest).fields.find{|f| f.name ==:datetime_field}.with(object: FieldTest.new).formatted_date_value).to eq 'January 01, 2012'
end
end
end

0 comments on commit a50a037

Please sign in to comment.