在Rails中创建类似背包的日历

时间:2008-10-29 17:19:46

标签: html ruby-on-rails plugins calendar

Rails世界中目前的最佳做法是显示日历月视图,其中事件项目与月中的日期绑定(例如,在背包或Google日历中)?

我不需要像拖放支持这样的奇特东西。我只是在寻找代码让我在控制器中获取一个事件列表,并以某种方式将它们作为每月日历显示视图中的条目公开(可能在HTML元素上有类名,以允许我以不同方式显示不同类型的事件,或者可能显示来自多个日历的事件。)

几年前创建了Dynamic Calendar Helper,这对我来说仍然可以正常工作,但我只是想知道我是否也应该关注其他插件。

到目前为止我发现的其他可能性:

那么,你能否指出我正确的方向,这些天人们用数据输出月度日历?

6 个答案:

答案 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现在运作良好:

http://github.com/topfunky/calendar_helper

答案 5 :(得分:1)

查看Redmine中的日历视图。