如何将fullcalendar转换为历史日历?

如何将fullcalendar转换为历史日历?,fullcalendar,Fullcalendar,我想使用完整的日历作为作者的助手。这意味着,至少,用户应该能够传递任意日期变量(),并且完整的日历应用程序将使用@hdate作为今天的日期。这可能吗?在视图控制器中,需要在何处使用该变量 我基本上是在使用《漂流的铁轨》第42集的代码。这是full_calendar.js var initialize_calendar; initialize_calendar = function() { $('.calendar').each(function(){ var calendar = $(this)

我想使用完整的日历作为作者的助手。这意味着,至少,用户应该能够传递任意日期变量(),并且完整的日历应用程序将使用@hdate作为今天的日期。这可能吗?在视图控制器中,需要在何处使用该变量

我基本上是在使用《漂流的铁轨》第42集的代码。这是full_calendar.js

var initialize_calendar;
initialize_calendar = function() {
$('.calendar').each(function(){
var calendar = $(this);
calendar.fullCalendar({
  header: {
    left: 'prev,next today',
    center: 'prevYear, title, nextYear',
    right: 'month,agendaWeek,agendaDay'
  },
  selectable: true,
  selectHelper: true,
  editable: true,
  eventLimit: true,
  events: '/events.json',

  select: function(start, end) {
    $.getScript('/events/new', function() {
      $('#event_date_range').val(moment(start).format("MM/DD/YYYY HH:mm") + ' - ' + moment(end).format("MM/DD/YYYY HH:mm"))
      date_range_picker();
      $('.start_hidden').val(moment(start).format('YYYY-MM-DD HH:mm'));
      $('.end_hidden').val(moment(end).format('YYYY-MM-DD HH:mm'));
    });

    calendar.fullCalendar('unselect');
  },

  eventDrop: function(event, delta, revertFunc) {
    event_data = { 
      event: {
        id: event.id,
        start: event.start.format(),
        end: event.end.format()
      }
    };
    $.ajax({
        url: event.update_url,
        data: event_data,
        type: 'PATCH'
    });
  },

  eventClick: function(event, jsEvent, view) {
    $.getScript(event.edit_url, function() {
      $('#event_date_range').val(moment(event.start).format("MM/DD/YYYY HH:mm") + ' - ' + moment(event.end).format("MM/DD/YYYY HH:mm"))
      date_range_picker();
      $('.start_hidden').val(moment(event.start).format('YYYY-MM-DD HH:mm'));
      $('.end_hidden').val(moment(event.end).format('YYYY-MM-DD HH:mm'));
    });
    }
  });
  })
 };

 $(document).on('turbolinks:load', initialize_calendar);
这是visitor.html.erb文件:

<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title><%= content_for?(:title) ? yield(:title) : "Template" %></title>
    <meta name="description" content="<%= content_for?(:description) ? yield(:description) : "Template" %>">
<%= csrf_meta_tags %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
 <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>
<body>
  <header>
  <%= render 'layouts/navigation' %>
</header>
<main role="main">
  <div class='container'>
    <%= render 'layouts/messages' %>
    <div class="calendar"></div>
    <div id='remote_container'></div>
  </div>
</main>


同样,我希望能够在assets/./../full_calendar.js容器之外修改calendar defaultDate,这样我就不需要预编译以在生产模式下运行。

Fullcalendar v2或更高版本可以设置日历的开始日期,或者你可以使用跳转到用户可以选择的任意日期。我在文档中看到了这一点,但我不知道如何让它工作。我尝试在控制器中定义一个节,但得到了一个rails错误。在视图控制器中放入一个设置,FC仍然从今天开始。您可以发布用于创建日历的代码段吗$(#calendar').fullCalendar({defaultDate:'1848-02-02'});看起来工作正常@您请求的是FC javascript代码段吗?或者某个布局视图或启动中的内容?假设启动,下面是代码:我一定是做错了什么,我不能把代码发到长度限制。你能告诉我你把你贴的东西放在哪里吗?我曾尝试将该代码放入FC的javascript容器中,它会导致FC显示失败。我尝试了事件控制器的控制器、模型、助手和视图。这是最新的{$('calendar')。完整日历({defaultDate:'1848-02-02'});$(文档)。在('turbolinks:load',initialize_calendar);}