gem ice_cube for reccurence events

岁酱吖の 提交于 2019-11-29 21:04:19

问题


I have simple Event model (title, date, user) And I created Events Calendar by months (gem 'watu_table_builder'). I need the feature to create repeating events. I figured out that I may use gem ice_cube for it. But it is not clear for me.

I added to model:

class Event < ActiveRecord::Base
  #require 'ice_cube'
  include IceCube

  belongs_to :user

  validates :title, :presence => true,
                    :length => { :minimum => 5 }
  validates :shedule, :presence => true

  def self.events_and_repeats(date)
    @events = Event.where(shedule:date.beginning_of_month..date.end_of_month)

# Here I need to figure out what is events repeats at this month (from date param)
# how I may combine it with Events array

    @events_repeats = @events # + repeats

    return @events_repeats

  end

1) How I may combine repeat rules with Events array?

2) As I understand, I may save to db information about repeats in yaml yaml = schedule.to_yaml

But it is not clear for me how it is good way to create drop-down for repeats (none, each day, each month, each year) and link it with shedule rules. Where and how I should realize it (convert user choise to right shedule)


回答1:


You won't be able to query the database for the Event's serialized (yaml) schedule to filter occurrences by month, if that's what you're trying to do. If you need to do that, then you'll have to store the schedule.occurrences as rows in a separate table join: that's what I do in our app.

I might have more details to add to this answer later, meanwhile have a look at my schedule_attributes gem if it helps you build the selectors for building schedules from user input (I still need to update docs and release it...)



来源:https://stackoverflow.com/questions/15790909/gem-ice-cube-for-reccurence-events

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!