2

ブートストラップ日時ピッカーを自分の Rails プログラムで動作させようとしています。これが私が使用しているフォームです。単純なフォームを使用しています:

 <%= simple_form_for(@event, html: {class: "form-horizontal"}) do |f| %>
  <%= f.error_notification %>

    <%= f.input :title %>
        <script type="text/javascript">
  $(function() {
    $('#datetimepicker1').datetimepicker({
      pickTime: false
    });
  });
</script>
    <%= f.input :date, as: :custom %>
    <%= f.input :description, as: :text, input_html: {rows: "5"} %>

  <div class="form-actions">
    <%= f.button :submit, class: "btn btn-primary" %>
  </div>
<% end %>

simpleforms の :custom 定義は次のとおりです。

  def input
text_field_options = input_html_options.dup
hidden_field_options = input_html_options.dup

text_field_options[:id] = "datetimepicker1"
text_field_options[:class] = 'input-append date form-horizontal'
text_field_options['data-date-format'] = I18n.t('date.datepicker')

hidden_field_options[:id] = "#{attribute_name}_hidden"

return_string =
  "#{@builder.text_field(attribute_name, text_field_options)}\n" +
  "#{@builder.hidden_field(attribute_name, hidden_field_options)}\n"
return_string = '<div id="datetimepicker1" class="input-append date form-horizontal">
<input data-format="MM/dd/yyyy" type="text">
<span class="add-on">
  <i data-time-icon="icon-time" data-date-icon="icon-calendar" class="icon-calendar">
  </i>
</span>

' return return_string.html_safe end

私のイベントコントローラーには、イベントの値をログに記録するためのこのコマンドがあります。

Rails.logger.info ("debug:" + @event.to_yaml)

フォームを実行してイベントを作成し、ログを確認すると、次のように表示されます。

debug:--- !ruby/object:Event

属性: id: タイトル: スターキー ミー サルサ 説明: サルサ ミー スウィフトリー 場所: 日付: 出席タイプ: グループサイズ: 作成時: 更新時: ユーザーID: 1

タイトルと説明は問題なく表示されますが、日付: が空白です。あなたが持っているかもしれない提案は大歓迎です.私はこれに非常に慣れていません.私はこれに約2日間苦労しています. ありがとう。

4

2 に答える 2