Rails世界中目前的最佳做法是显示日历月视图,其中事件项目与月中的日期绑定(例如,在背包或Google日历中)?
我不需要像拖放支持这样的奇特东西。我只是在寻找代码让我在控制器中获取一个事件列表,并以某种方式将它们作为每月日历显示视图中的条目公开(可能在HTML元素上有类名,以允许我以不同方式显示不同类型的事件,或者可能显示来自多个日历的事件。)
几年前创建了Dynamic Calendar Helper,这对我来说仍然可以正常工作,但我只是想知道我是否也应该关注其他插件。
到目前为止我发现的其他可能性:
那么,你能否指出我正确的方向,这些天人们用数据输出月度日历?
答案 0 :(得分:18)
这是一个Rails插件,可以跨日历日显示多个重叠的事件。
http://github.com/elevation/event_calendar
屏幕截图:http://dev.elevationblog.com/2009/7/23/event-calendar-rails-plugin
答案 1 :(得分:8)
结帐http://github.com/p8/table_builder/tree/master。 它的工作原理更像form_for。 它也不需要Event对象,只需要带有返回日期的方法的对象。
<% calendar_for(@tasks, :year => @year, :month => @month) do |t| %>
<%= t.head('mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun') %>
<% t.day(:day_method => YOUR_DATE_METHOD) do |day, tasks| %>
<%= day.day %><br />
<% tasks.each do |task| %>
<%= h(task.name) %><br />
<% end %>
<% end %>
<% end %>
<% end %>
答案 2 :(得分:3)
我不知道这是否适合你问题的限制,但是你看过Google Calendar API吗?我不知道您是否可以指望您的用户拥有自己的帐户,或者您是否可以通过编程方式在一个帐户上创建所需的所有日历,只需通过API提取每个日历数据,但可能值得一看
答案 3 :(得分:3)
我现在最终使用Dynamic Calendar Helper。
答案 4 :(得分:3)
如果有人仍在寻找rails日历插件,Topfunky的calendar_helper现在运作良好:
答案 5 :(得分:1)
查看Redmine中的日历视图。