неинициализированная константа ActiveSupport :: CoreExtensions - PullRequest
6 голосов
/ 02 марта 2011

Я пытаюсь интегрировать средство выбора даты jquery с formtastic, как подробно здесь

Я точно следовал инструкциям, но получаю «неинициализированную константу ActiveSupport :: CoreExtensions» при запуске этогокод:

<%= semantic_form_for @item, :html => { :multipart => true, :class => 'form'} do |f| %>
 <div class="group">
  <%= f.label :create_date, :class => 'label' %>
  <%= f.input :create_date, :as => :datepicker %>
 </div>
<% end %>

Я попытался поместить это в мой config / application.rb:

require 'active_support/core_ext/date/conversions'

Я перезапустил сервер, но все еще получаю ту же ошибку.Я помещаю эту нужную строку в правильное место?

1 Ответ

10 голосов
/ 02 марта 2011

Проверяя страницу, на которую вы ссылались, я предполагаю, что проблема заключается в следующей строке:

format = options[:format] || ActiveSupport::CoreExtensions::Date::Conversions::DATE_FORMATS[:default] || '%d %b %Y'

Глядя на файл , который вы упомянули , кажется, что Rails теперь напрямую изменяет класс Date, а не определяет ActiveSupport::CoreExtensions::Date; кроме того, передача :default в качестве ключа к DATE_FORMATS, кажется, просто вызывает to_default_s для объекта. Самый простой способ справиться с этим, вероятно, состоит в том, чтобы удалить всю ссылку на ActiveSupport::CoreExtensions, поскольку в коде также указано значение по умолчанию:

format = options[:format] || '%d %b %Y'

Вы также можете указать один из форматов дат, добавляемых Rails в conversions.rb следующим образом:

format = options[:format] || Date::DATE_FORMATS[:rfc822] || '%d %b %Y'
...