GAE Python - 'InboundEmailMessage'对象没有属性'cc'

时间:2014-01-27 15:50:57

标签: python google-app-engine email attributeerror

我在GAE上处理入站电子邮件,但在检测是否有CC值时出现问题。代码基本上要做三件事: 1)如果CC没有值,则不执行任何操作。 2)当CC存在时,将CC保存到item.cc。 3)如果发生错误,请记录。 我已经编写了以下代码来执行此操作:

import traceback
from google.appengine.ext.webapp.mail_handlers import InboundMailHandler

from myapp.models import Item

class MyTask(InboundMailHandler):
  def receive(self, mail_message):

    item = Item()

    try:
        if mail_message.cc == None:
            pass
        else:
            item.cc = mail_message.cc
    except:
        stacktrace = traceback.format_exc()
        logging.error("%s", stacktrace)

    item.put()

但是,当我处理没有CC值的电子邮件时,我收到以下错误:

  

AttributeError:' InboundEmailMessage'对象没有属性' cc'

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

阅读源代码,看起来InboundEmailMessage的大多数属性只有在它们具有非空值时才会被设置。

您可以执行以下操作:

try:
    item.cc = mail_message.cc
except AttributeError:
    pass