I'd like to see that table layout Annet has :)

Annet, is that ok ?

Thanks,

Mart :)

On Nov 24, 10:05 am, mdipierro <mdipie...@cs.depaul.edu> wrote:
> I agree + queue emails and have a background process send them.
>
> On Nov 24, 8:50 am, Thadeus Burgess <thade...@thadeusb.com> wrote:
>
> > the problem with mail.send is it creates a brand new connection to the SMTP
> > server *every* single time you call it.
>
> > If you are sending more than 10 emails at a time this will not be efficient
> > and will take an unnecessary amount of time to complete.
>
> > I would suggest dropping down to using base smtplib so you can send
> > everything through a single connection. Keep in mind when doing this certain
> > SMTP servers have limits on how many emails can be sent (500 by default) so
> > you would need to re-establish your connection after this cutoff point.
>
> > --
> > Thadeus
>
> > On Wed, Nov 24, 2010 at 1:09 AM, annet <annet.verm...@gmail.com> wrote:
> > > Hi David,
>
> > > I have a crm app from which I send html mails using the following
> > > function:
>
> > > def mail():
> > >    m_list=db(...).select(...)
> > >    for item in m_list:
> > >        context=dict(item=item)
> > >        message=response.render('mail/mail.html',context)
> > >        recipient=item.email
>
> > > boolean=mail.send(to=[recipient],subject='...',message=[None,message])
> > >        if boolean:
> > >            db.mailingstats.insert(...)
> > >        else:
> > >            db.adminstats.insert(...)
> > >    return True
>
> > > The boolean stuff isn't a necessity but it gives me feedback on the
> > > process, and I use the mailingstats table for statistical purposes.
>
> > > If you're sending html mails make sure the layout is all tables, and
> > > put the css in the body not in the head. If you need an example I'll
> > > post a view.
>
> > > Kind regards,
>
> > > Annet.
>
>

Reply via email to