2015-01-01 5 views
0

Я вытащил этот код из here, но затем, когда я нажимаю на форму ввода даты, календарь не появляется. Я настроил gem «bootstrap-datepicker-rails» и добавил необходимый код в application.css (* = require bootstrap-datepicker) & application.js (// = требует bootstrap-datepicker).Мы не можем вернуться во времени, но мы можем его переформатировать: как использовать Bootstrap & Ruby?

Если у кого есть какие-либо предложения , исправить это или предоставить любые альтернативы Я все уши. Я просто хочу иметь возможность использовать всплывающее меню календаря, чтобы люди могли выбрать дату окончания своих целей, которые были бы самими собой. Даже если всплывающее окно календаря не работает, по крайней мере, я хочу получить более качественный макет, чем форма выбора даты по умолчанию.

Сегодня мой 24-й день рождения, поэтому, если кто-то не похмелье, пожалуйста, дайте мне этот подарок. Спасибо и с Новым Годом!

конфигурации/инициализаторы/form.rb

module ActionView 
 
    module Helpers 
 
    class FormBuilder 
 
     def date_select(method, options = {}, html_options = {}) 
 
     existing_date = @object.send(method) 
 
     formatted_date = existing_date.to_date.strftime("%F") if existing_date.present? 
 
     @template.content_tag(:div, :class => "input-group") do  
 
      text_field(method, :value => formatted_date, :class => "form-control datepicker", :"data-date-format" => "YYYY-MM-DD") + 
 
      @template.content_tag(:span, @template.content_tag(:span, "", :class => "glyphicon glyphicon-calendar") ,:class => "input-group-addon") 
 
     end 
 
     end 
 

 
     def datetime_select(method, options = {}, html_options = {}) 
 
     existing_time = @object.send(method) 
 
     formatted_time = existing_time.to_time.strftime("%F %I:%M %p") if existing_time.present? 
 
     @template.content_tag(:div, :class => "input-group") do  
 
      text_field(method, :value => formatted_time, :class => "form-control datetimepicker", :"data-date-format" => "YYYY-MM-DD hh:mm A") + 
 
      @template.content_tag(:span, @template.content_tag(:span, "", :class => "glyphicon glyphicon-calendar") ,:class => "input-group-addon") 
 
     end 
 
     end 
 
    end 
 
    end 
 
end

_form.html.erb

<%= form_for(@goal) do |f| %> 
 
    <% if @goal.errors.any? %> 
 
    <div id="error_explanation"> 
 
     <h2><%= pluralize(@goal.errors.count, "error") %> prohibited this goal from being saved:</h2> 
 

 
     <ul> 
 
     <% @goal.errors.full_messages.each do |message| %> 
 
     <li><%= message %></li> 
 
     <% end %> 
 
     </ul> 
 
    </div> 
 
    <% end %> 
 

 
    <div class="america"> 
 
<form> 
 

 
    <div class="form-group"> 
 
    <%= f.text_field :name, class: 'form-control', placeholder: 'Enter Goal' %> 
 
    </div> 
 
    <div class="form-group"> 
 
     <label>Deadline:</label> 
 
     <%= f.date_select :deadline %> 
 
    </div> 
 

 
<div class="america2"> 
 
    <%= button_tag(type: 'submit', class: "btn") do %> 
 
    <span class="glyphicon glyphicon-plus"></span> 
 
    <% end %> 
 

 
    <%= link_to goals_path, class: 'btn' do %> 
 
    <span class="glyphicon glyphicon-chevron-left"></span> 
 
    <% end %> 
 

 
    <%= link_to @goal, method: :delete, data: { confirm: 'Are you sure?' }, class: 'btn' do %> 
 
    <span class="glyphicon glyphicon-trash"></span> 
 
    <% end %> 
 
</div> 
 
    </form> 
 
</div> 
 
<% end %>

Благодарим вас за внимание.

+0

Вы называете '$ ('. Datepicker'). Datetimepicker();' где-то? –

+0

Я добавил его сейчас в форму, но все равно не повезло –

ответ

0

Я понимаю, что вы не можете использовать f.date_select с помощью bootstrap datepicker, вместо этого используйте f.text_field.

Смежные вопросы