Class: RubyUIAdmin::Fields::DateTimeField
- Defined in:
- lib/ruby_ui_admin/fields/date_time_field.rb
Constant Summary collapse
- DEFAULT_FORMAT =
"%Y-%m-%d %H:%M"
Instance Attribute Summary
Attributes inherited from BaseField
#block, #id, #options, #resource
Instance Method Summary collapse
Methods inherited from BaseField
#database_id, #default_hidden_views, #default_value, #description, field_type, #fill, #fill_value, #filterable?, #has_default?, #help, #initialize, #link_to_record?, #name, #permit_param, #permit_params, #permitted_param, #placeholder, #readonly?, register_as, #required?, #sort_lambda, #sortable?, #type, #value, #visible?, #visible_in_view?
Constructor Details
This class inherits a constructor from RubyUIAdmin::Fields::BaseField
Instance Method Details
#format ⇒ Object
10 11 12 |
# File 'lib/ruby_ui_admin/fields/date_time_field.rb', line 10 def format [:format] || DEFAULT_FORMAT end |
#formatted_value(record, view_context: nil) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/ruby_ui_admin/fields/date_time_field.rb', line 14 def formatted_value(record, view_context: nil) raw = value(record, view_context: view_context) return nil if raw.nil? return super if @format_using # Display in the admin's configured timezone (set per-request from config.timezone). raw = raw.in_time_zone if raw.respond_to?(:in_time_zone) return raw unless raw.respond_to?(:strftime) fmt = [:format] # A String `format:` is an explicit strftime pattern; otherwise localize via I18n.l # (a Symbol picks a named locale format; nil uses the gem's locale-aware default), so # pt-BR renders "%d/%m/%Y %H:%M", en "%Y-%m-%d %H:%M", etc. return raw.strftime(fmt) if fmt.is_a?(String) begin I18n.l(raw, format: fmt || :ruby_ui_admin) rescue raw.strftime(DEFAULT_FORMAT) end end |