You should just be able to do mail.sent(....,encoding='latin1')
or whatever the encoding is. It would be best just to make sure you pass utf8 strings to web2py. On Nov 30, 1:09 pm, Alex <person...@gmail.com> wrote: > My code is very simple: > > def index(): > response.flash = "Hello"; > form = SQLFORM(db.requests) > if form.accepts(request.vars): > response.flash = 'Thanks. We will contact you soon.' > body = '' > for var in form.vars: > body = body + var + ':\r\n' + str(form.vars[var]) + '\r\n\r > \n' # > mail.send('reque...@gmail.com', 'Requests', body) > redirect(URL(r=request,f='contacts')) > elif form.errors: > response.flash = 'Form has errors' > else: > response.flash = 'Please fill the form' > return dict(form=form) > > And I enter some cyrilic characters in the form. > > When I submit form I get: > > mail.send(\'....@gmail.com\', \'subject\', body)\n File "/var/www/ > web2py/gluon/tools.py", line 271, in send\n attachment.attach > (email.MIMEText.MIMEText(text.encode(encoding)))\nUnicodeDecodeError: > \'ascii\' codec can\'t decode byte 0xd0 in position 30: ordinal not > in > range(128)\n' > > I used this code on top of my default controller and it helped. > I don't know why should i do this, but it really helped I got this > idea > from this pagehttp://trac.edgewall.org/ticket/5628 > > import sys > reload(sys) > sys.setdefaultencoding("utf-8") > > What it changes and should I really write this code on the top of each > controller? > > On Nov 30, 9:00 pm, Thadeus Burgess <thade...@thadeusb.com> wrote: > > > The reason is because there are non-latin characters in the text body. > > > Where are you getting your data source? Is it possible to use UTF-8 encoded > > characters instead of ASCII? > > > Are you attempting to pass a different encoding scheme to the Mail object? > > > Can we get some code that you are using? > > > -Thadeus > > > On Mon, Nov 30, 2009 at 12:50 PM, Alex <person...@gmail.com> wrote: > > > his error happens when non-latin characters are passed in the body, > > > what is the reason and how to fix it, i'm still not very strong in > > > python errors. Thanks. > > -- You received this message because you are subscribed to the Google Groups "web2py-users" group. To post to this group, send email to web...@googlegroups.com. To unsubscribe from this group, send email to web2py+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/web2py?hl=en.