小编rfr*_*kel的帖子

如何获得与Gmail/Google Apps正确集成的会议邀请?

我使用Django和python-icalendar生成iCalendar文件,它们在Outlook(2010)中正确显示为会议邀请.在Gmail(Google Apps)中,我只看到一封空白的电子邮件.这是怎么回事?这是我的.ics文件之一:

BEGIN:VCALENDAR
METHOD:REQUEST
PRODID:-//My Events App//example.com//
VERSION:2.0
BEGIN:VEVENT
ATTENDEE;CN=Richard;ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:rich@example.com
CREATED;VALUE=DATE:20101122T183813
DESCRIPTION:Phone number: (212)-123-4567\n\nThis is a test description
 for the conference call.
DTEND;VALUE=DATE:20101127T131802Z
DTSTAMP;VALUE=DATE:20101127T121802Z
DTSTART;VALUE=DATE:20101127T121802Z
LAST-MODIFIED;VALUE=DATE:20101122T183813
ORGANIZER;CN=Example.com:events@example.com
SEQUENCE:1
SUMMARY:Conference call about GLD
UID:example.com.20
END:VEVENT
END:VCALENDAR
Run Code Online (Sandbox Code Playgroud)

哦,我正在使用Django的EmailMultiAlternatives来附加ics内容,如下所示:

if calendar:
    message.attach_alternative(calendar.as_string(), "text/calendar; method=REQUEST; charset=\"UTF-8\"")
    message.content_subtype = 'calendar'
Run Code Online (Sandbox Code Playgroud)

django icalendar outlook gmail meeting-request

8
推荐指数
1
解决办法
2428
查看次数

Django/Apache/mod_wsgi没有使用virtualenv的Python二进制文件

我在/ opt/webapps/ff /上有一个virtualenv,它有自己的Python安装.我在我的Apache配置文件中将WSGIPythonHome设置为/ opt/webapps/ff(这肯定会在某些容量中使用,因为如果我将它设置为稍微不同的现有目录并重新启动Apache,我会得到504).但是,如果我assert False在一个视图中某处调出Django调试页面,我会看到settings.PYTHON_BIN /usr/bin而不是/opt/webapps/ff/bin.

如何让Apache/mod_wsgi使用我的虚拟环境的Python二进制文件?我认为设置WSGIPythonHome是这样做的方法,但它似乎只影响使用哪个site-packages目录,而不是使用哪个二进制文件.谢谢.

python apache django mod-wsgi wsgi

6
推荐指数
2
解决办法
5874
查看次数

以编程方式从Raphael.JS图像生成PNG

我正在编写一个应用程序,让用户使用Raphael.JS生成图像.我想要的一个次要功能是生成Raphael画布的PNG.

这是我头脑中的一般管道:

  1. 用户输入参数
  2. 我们用Raphael调用生成JS
  3. 我们生成一个JS包装器,它执行上述操作并在包含div上调用.innerHTML,为我们提供SVG(然后我们将其发送到某处)
  4. 我们执行JS包装器
  5. SVG被发送到ImageMagick并弹出一个PNG

第4步是我需要一些指导的步骤.用户可能正在使用IE; 我们无法保证JS是在SVG浏览器中执行的.无论如何,我们需要在服务器端运行才能保证可靠性.所以这是我到目前为止提出的三种可能性:

  • 在服务器上安装Firefox并在Firefox中运行(3)的结果.这个选项很糟糕,因为安装FF意味着在我们的服务器上安装一堆X东西,运行FF会带来很多开销,而且我真的不想跟踪进程并在完成后终止它.
  • 使用Node.js + jsdom(http://github.com/tmpvar/jsdom).这里的缺点是,目前还不清楚jsdom是如何得到支持的 - 声称的网站jsdom.org并不存在.另外,我找不到任何文件.
  • 也许与Rhino做点什么?据我所知,Rhino的DOM支持甚至比Node还要少.

所以......所有这三个选项都很糟糕.我认为.我错了什么?还有另外一种方法吗?

javascript png image rhino raphael

5
推荐指数
1
解决办法
1996
查看次数

Django select_related与指定的字段分隔多个一对一关系

我在尝试通过多个OneToOneField关系选择相关时遇到了一个奇怪的错误,例如在目标字段是孙子类的情况下.我希望有人帮助我了解正在发生的事情(或确认这是Django中的一个错误).

插图:

# models.py
from django.db import models

class A(models.Model):
    pass

class B(A):
    pass

class C(B):
    pass
Run Code Online (Sandbox Code Playgroud)

很简单吧?现在我用一个干净的数据库打开Django shell:

>>> C().save()
>>> A.objects.select_related('b__c')
[]
Run Code Online (Sandbox Code Playgroud)

等等,什么?为什么该查询集为空?快速健全检查:

>>> A.objects.select_related('b')[0].b.c
<C: C object>
Run Code Online (Sandbox Code Playgroud)

那么为什么select_related调用不起作用呢?好吧,看这个:

>>> A.objects.select_related('b__c').__iter__().next()
... 
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/opt/webapps/asdf/lib/python2.6/site-packages/django/db/models/query.py", line 107, in _result_iter
    self._fill_cache()
  File "/opt/webapps/asdf/lib/python2.6/site-packages/django/db/models/query.py", line 772, in _fill_cache
    self._result_cache.append(self._iter.next())
  File "/opt/webapps/asdf/lib/python2.6/site-packages/django/db/models/query.py", line 273, in iterator
    for row in compiler.results_iter():
  File "/opt/webapps/asdf/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 680, in results_iter
    for rows in self.execute_sql(MULTI):
  File …
Run Code Online (Sandbox Code Playgroud)

django django-orm django-queryset django-select-related django-inheritance

5
推荐指数
1
解决办法
1951
查看次数