Python 属性错误:';列表';对象没有属性';lstrip';

Python 属性错误:';列表';对象没有属性';lstrip';,python,django,email,smtp,Python,Django,Email,Smtp,在过去的3个小时里,我试图发送一封带有CSV文件附件的电子邮件到从数据库获取的电子邮件列表,但我收到了一个错误,我不确定为什么会发生。 我仔细检查了我的代码是否有错误,如果有任何unicode被传递等等,以避免我将获取的数据转换为str,但没有任何用处 如果我独立运行脚本,它会执行并发送带有附件的电子邮件,没有问题,但在Django中,它给出了一个错误 电子邮件列表用于检查错误是否与数据库相关,但与数据库无关。它也显示在预定义的电子邮件列表中 我从你那里得到了这个片段 这是一个很好的例子,但我

在过去的3个小时里,我试图发送一封带有CSV文件附件的电子邮件到从数据库获取的电子邮件列表,但我收到了一个错误,我不确定为什么会发生。 我仔细检查了我的代码是否有错误,如果有任何unicode被传递等等,以避免我将获取的数据转换为str,但没有任何用处

如果我独立运行脚本,它会执行并发送带有附件的电子邮件,没有问题,但在Django中,它给出了一个错误

电子邮件列表用于检查错误是否与数据库相关,但与数据库无关。它也显示在预定义的电子邮件列表中

我从你那里得到了这个片段

这是一个很好的例子,但我认为它对我没有任何好处

错误

正在执行系统检查

由回溯启动的线程中未处理的异常(最近一次调用last):文件 “C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\utils\autoreload.py”, 第228行,在包装器中 fn(*args,**kwargs)文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\core\management\commands\runserver.py”, 第124行,内部运行 self.check(display\u num\u errors=True)文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\core\management\base.py”, 第359行,检查中 include_deployment_checks=include_deployment_checks,文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\core\management\base.py”, 第346行,运行中检查 返回检查。运行检查(**kwargs)文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\core\checks\registry.py”, 第81行,运行检查 新建\u errors=check(app\u configs=app\u configs)文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\core\checks\url.py”, 第16行,在check\u url\u config中 返回检查\u解析器(解析器)文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\core\checks\url.py”, 第26行,检查分解器 返回check\u method()文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\url\resolvers.py”, 第256行,检查中 对于self.url\u模式中的模式:文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\utils\functional.py”, 第35行,在获取 res=instance.dict[self.name]=self.func(实例)文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\url\resolvers.py”, 第407行,url_模式 patterns=getattr(self.urlconf_模块,“urlpatterns”,self.urlconf_模块)文件 “C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\utils\functional.py”, 第35行,在获取 res=instance.dict[self.name]=self.func(实例)文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\url\resolvers.py”, 第400行,在urlconf_模块中 返回导入模块(self.urlconf_名称)文件“c:\python27\Lib\importlib__init__.py”,第37行,在导入模块中 导入(名称)文件“C:\Users\Bitswits 3\Desktop\LCRProject\leastcstrouting\leastcstrouting\url.py”,第行 12,在 url(“”,include('LCR.url')),文件“C:\Users\BITSWI~1\Desktop\LCRPRO~1\VE\lib\site packages\django\conf\url\uuu init\uuu.py”, 第50行,包括 urlconf_module=import_module(urlconf_module)文件“c:\python27\Lib\importlib__init__.py”,第37行,在import_module中 导入(名称)文件“C:\Users\Bitswits 3\Desktop\LCRProject\leastcstrouting\LCR\urls.py”,第25行,在 url(r'^(?i)someemail/$',views.lcr_send_email(),name='EE-Page'),文件“C:\Users\Bitswits” 3\Desktop\LCRProject\leastcstrouting\LCR\views.py”,第422行,在 发送电子邮件 server.sendmail(来自\u地址、电子邮件\u列表、msg.as\u字符串())文件“c:\python27\Lib\email\message.py”,第137行,as\u字符串 g、 展平(self,unixfrom=unixfrom)文件“c:\python27\Lib\email\generator.py”,展平中第83行 self.\u write(msg)文件“c:\python27\Lib\email\generator.py”,第115行,在\u write中 self.\u write\u headers(msg)文件“c:\python27\Lib\email\generator.py”,第164行,在\u write\u headers中 v、 maxlinelen=self.\u maxheaderlen,header\u name=h).encode()文件“c:\python27\Lib\email\header.py”,第410行,在encode中 value=self._encode_chunks(newchunks,maxlinelen)文件“c:\python27\Lib\email\header.py”,第370行,在_encode_chunks中 _max\u append(chunk、s、maxlinelen、extra)文件“c:\python27\Lib\email\qooprimime.py”,第97行,在max\u append中 L.append(s.lstrip())AttributeError:'list'对象没有属性'lstrip'

代码

def lcr_send_email():
template=“LCR\LCR\u Email.html”
电子邮件列表=[]
供应商清单=[]
email\u data=收件人emails.objects.values\u列表(
“收件人\电子邮件”,扁平=真)
对于电子邮件中的i\u数据:
电子邮件列表。附加(str(i))
对于电子邮件列表中的z:
打印类型(z)
vendor\u name=vendor.objects.values\u list('venr\u name',flat=True)
对于供应商名称中的i:
供应商清单附加(str(i))
电子邮件=[
'foo@example.com',
'bar@example.com',
...
]
主题=供应商清单
密码=设置。电子邮件\u主机\u密码
email=settings.email_HOST_USER#email from
smtp_server=“smtp.gmail.com”
smtp_端口=587
from\u address=settings.EMAIL\u HOST\u用户
from\u password=settings.EMAIL\u HOST\u password
mail_body=“这是一个自动回复”
msg=MIMEMultipart()
msg['Subject']=主语
msg['To']=电子邮件列表
附加信息(邮件正文)
file=“MyCsv.csv”
part=MIMEBase(“应用程序”、“八位字节流”)
part.set_有效载荷(打开(文件“rb”).read())
编码器。编码_base64(部分)
part.add_头('Content-Disposition','attachment;filename=“{0}”)。格式(os.path.basename(file)))
附加信息(部分)
服务器=smtplib。