Javascript Rails 4 x simple_日历gem:单击日历单元格创建新记录
我有一个Rails 4应用程序,它有一个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字段将预先填入单元格中的日期 我使
Post
模型和一个Calendar
模型:一个Post
属于aCalendar
,一个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 %>