calendar_date_select icon indicating copy to clipboard operation
calendar_date_select copied to clipboard

Rails 3.2; Is a config/initializers/calendar_date_select file needed? Am I doing it right?

Open jzellman opened this issue 12 years ago • 6 comments

Hi,

I'm in the process of upgrading an app from Rails 2.3 to 3.2. In order to get the plugin working correctly I had to do the following:

Add calendar date select to the Gemfile:

gem 'calendar_date_select', '2.0.0', 
    :git => 'git://github.com/timcharper/calendar_date_select.git'

Add the following to my layout/application (for silver style):

<%= stylesheet_link_tag 'calendar_date_select/silver'  %> 
<%= javascript_include_tag 'calendar_date_select/calendar_date_select' %>

Add the css and js assets to the asset pipeline in config/application.rb:

config.assets.precompile += ['calendar_date_select/*.css', 'calendar_date_select/*.js'] 

Create the file config/initializers/calendar_date_select.rb with the following:

require 'calendar_date_select'    
ActionView::Helpers::FormHelper.send(:include, CalendarDateSelect::FormHelpers) 
ActionView::Base.send(:include, CalendarDateSelect::FormHelpers)   
ActionView::Base.send(:include, CalendarDateSelect::IncludesHelper) 

Without the config/initializer/calendar_date_select.rb file, the calendar_date_select helper method is no longer available in the views:

undefined method `calendar_date_select'

So my question is... is a config/initializer file required? Is there a better way to get the helpers loaded in the ActionView context?

Thanks,

Jeff

jzellman avatar Oct 14 '13 16:10 jzellman

No initializer is needed. I believe you're looking for calendar_date_select_tag (i.e. missing the _tag part).

I think calendar_date_select is available only from a form (e.g. form_for blabla do |f| ; f.calendar_date_select :some_field; ...)

PS: there's a calendar_date_select_includes helper you can use for the js/css if you like.

marcandre avatar Oct 15 '13 02:10 marcandre

Closing, but I'll reopen if need be.

marcandre avatar Oct 15 '13 03:10 marcandre

Thanks for the help, calendar_date_select_includes fixed the loading of the javascripts and stylesheets.

I'm still having an issue using f.calendar_date_select. I don't think it is a problem with calendar_date_select since I created a vanilla Rails 3.2.13 application and it worked fine there.

Unfortunately the app I inherited is a rather large app with a lot of gem dependencies. For now I'll just leave ActionView::Base.send(:include, CalendarDateSelect::FormHelpers) in an initializer as a stop gap until I can find the offending library.

Thanks again for the help!

Jeff

jzellman avatar Oct 15 '13 17:10 jzellman

I have the same issue in a old project upgraded to Rails 4.0.0.

I need to initialize ActionView::Base.send(:include, CalendarDateSelect::FormHelpers) for calendar_date_select_tag and calendar_date_select to work.

nicdal avatar Oct 16 '13 12:10 nicdal

Bump

bigtunacan avatar Sep 12 '14 15:09 bigtunacan

have a look on this fork for Rails 4 https://github.com/bdcheung/calendar_date_select

paxer avatar Oct 14 '14 04:10 paxer