“icalendar.publish”方法有什么作用?

Mir*_*318 1 icalendar ruby-on-rails

在 icalendar gem 的自述文件中,他们有以下示例代码:

cal = Icalendar::Calendar.new
cal.event do |e|
  e.dtstart     = Icalendar::Values::Date.new('20050428')
  e.dtend       = Icalendar::Values::Date.new('20050429')
  e.summary     = "Meeting with the man."
  e.description = "Have a long lunch meeting and decide nothing..."
  e.ip_class    = "PRIVATE"
end

cal.publish
Run Code Online (Sandbox Code Playgroud)

什么是cal.publish方法吗?没有它的文档,源代码只显示了这一点:

def publish
  self.ip_method = 'PUBLISH'
end
Run Code Online (Sandbox Code Playgroud)

那没有帮助——有什么用ip_method??

如果有人可以解释这一点,那将是一个很大的帮助。

Chr*_*ian 5

从 Github 我可以看到定义了一个 optional_single_property(钩子?)。

https://github.com/icalendar/icalendar/blob/97ed9d301448350de15da4ba3b2323bd685d358c/lib/icalendar/has_properties.rb#L116

我认为这是指 iTip 方法,此方法仅设置发布方法。

我在这里找到了这个:

“方法”在 iCalendar 标准中没有解释,但是在 iTIP 标准中,阅读第二个标准可以澄清很多。这些是标准第 8 页中列出的支持的方法:

发布:用于将 iCalendar 对象发布给一个或多个“日历用户”。发布者和任何其他“日历用户”之间没有交互。一个例子可能包括棒球队向公众发布其日程安排。

iTip 的内容在RFC 5546 中有解释。

环顾四周,我发现另一个人说:

“iCalendar 使用方法 PUBLISH 而不是 REQUEST。使用 REQUEST,它只是调出日历,而使用 PUBLISH 导入它。”

我希望这回答了你的问题。