0

我有以下发射器:

class iCalEmitter(Emitter):
    def render(self, request):
        data = self.construct()
        cal = Calendar()

        cal.add('prodid', 'iCalendar Feed')
        cal.add('version', '2.0')
        for event in data:
            if event.get('start'):
                event['start_time'] = event['start']
            if event.get('end'):
                event['end_time'] = event['end']

            ical_event = calEvent()
            ical_event.add('summary', event['title'])
            ical_event.add('dtstart', event['start_time'])
            ical_event.add('dtend', event['end_time']
                                    if event.get('end_time')
                                    else event['start_time'])
            ical_event['uid'] = event['id']
            cal.add_component(ical_event)

        return cal.as_string()

我想修改响应,使其返回具有特定文件名的可下载文件。我该怎么做呢?django-piston 在这方面的文档似乎很薄弱。

4

1 回答 1

0

Modifying response headers through an emitter is not an easy task, so I took a different route. I added a URL pattern to my app to match /events/calendar.ics and passed the emitter_format parameter through the URL pattern. Ugly, but it works.

于 2011-11-30T04:03:00.190 回答