Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Rails 4 x simple_日历gem:单击日历单元格创建新记录_Javascript_Ruby On Rails_Ruby On Rails 4_Coffeescript_Calendar - Fatal编程技术网

Javascript Rails 4 x simple_日历gem:单击日历单元格创建新记录

Javascript Rails 4 x simple_日历gem:单击日历单元格创建新记录,javascript,ruby-on-rails,ruby-on-rails-4,coffeescript,calendar,Javascript,Ruby On Rails,Ruby On Rails 4,Coffeescript,Calendar,我有一个Rails 4应用程序,它有一个Post模型和一个Calendar模型:一个Post属于aCalendar,一个Calendar有许多posts Post模型有一个自定义的:date属性 帖子显示在两个备选视图中: 作为标准日历中的列表#显示视图 作为自定义日历#日历_视图视图中的日历 我试图实现的是,允许用户只需在日历#日历(calendar)视图中单击日历的一个单元格即可创建一篇新文章,也就是说,转到帖子#新建视图,在该视图中,新文章的:date字段将预先填入单元格中的日期 我使

我有一个Rails 4应用程序,它有一个
Post
模型和一个
Calendar
模型:一个
Post
属于
a
Calendar
,一个
Calendar
有许多
posts

Post
模型有一个自定义的
:date
属性

帖子显示在两个备选视图中:

  • 作为标准
    日历中的列表#显示
    视图
  • 作为自定义
    日历#日历_视图
    视图中的日历
我试图实现的是,允许用户只需在
日历#日历(calendar)视图
中单击日历的一个单元格即可创建一篇新文章,也就是说,转到
帖子#新建
视图,在该视图中,新文章的
:date
字段将预先填入单元格中的日期

我使用
日历视图中的
视图显示帖子,代码如下:

<%= month_calendar events: @posts do |date,posts| %>
  <%= content_tag :div, class: "new-event", data: {date: date} do %>
    <%= date.strftime('%e') %>
    <% posts.each do |post| %>
      <div class="single_event">
        <%= link_to post.subject, post_path(post) %>
      </div>
    <% end %>
  <% end %>
<% end %>
然后,在我的
Posts#New
操作中,我使用
@post=@calendar.Posts.New(post_参数)
从表单中的单元格预加载日期

问题是:当我在
calendar\u视图
视图中单击一个单元格时,什么也没有发生

我在Chrome中检查了控制台,没有出现错误

你知道这里出了什么问题,或者至少我应该从哪里开始调试它吗?

看看这个例子:

您可以使用这个JS来触发重定向。我的位置重定向错误,这是你想要的:

jQuery ->
  $(".calendar-day").on "click", ->
    date = $(this).data("date")
    location.href = "/meetings/new?meeting[start_time]=#{date}"
这一切都与日历的HTML挂钩:

<%= month_calendar do |day| %>
  <%= content_tag :div, class: "calendar-day", data: {date: day} do %>
    <%= day %>
    <%# Whatever else you want in here %>
  <% end %>
<% end %>

在Meetings的新操作中有一点变化,它使用强参数预先填充参数(如果缺少,也不会抛出错误)

那就应该成功了

<%= month_calendar do |day| %>
  <%= content_tag :div, class: "calendar-day", data: {date: day} do %>
    <%= day %>
    <%# Whatever else you want in here %>
  <% end %>
<% end %>