Django email html формат не

`html = """\
            <html>
                <head></head>
                    <body>
                        <p>Hi Team,<br><br>
                        Reminder:<br>
                        Please check if Domain listed below need to be renewed.<br><br>
                        {0}

                        </p>
                    </body>
            </html>
            """

    
    www = get_data_from_db()
    week_old = 14
    d = []
    
    for domain in www:
    
        days = compute_days(domain)
        if int(days) <= int(week_old):
    
            d.append("{0} is expiring in {1} days.<br>".format(domain, days))
            print(d)
    
            html = ('\n'.join(d))
    
            print(html)
    
    part2 = MIMEText(html, 'html')
    
    msg.attach(part2)`

Привет, не так давно начал изучать python/django. Этот проект заключается в добавлении напоминания/уведомления в компанию путем рассылки электронной почты.

Я столкнулся с проблемой, когда я не могу правильно отобразить html со значением.

Если я изменю свой код на html = html.format('\n'.join(d)) Он отобразит html с 1 значением, в то время как фактический результат - 2 значения. Не хватает еще одного.

Если я использую приведенный выше код, он отобразит только 2 значения, но пропустит html.

Что я здесь упускаю?

После нескольких изменений мне удалось получить желаемый результат. Ниже приведены изменения, которые я сделал.

html_body = """\
            <html>
                <head></head>
                    <body>
                        <p>Hi Team,<br><br>
                        
                        name below expiring soon:<br><br>
                        
                        
            """
    html_close = """\
                        <br>
                        <p>Regards<br>
                        </p>
                    </body>
            </html>
    """

    www = get_data_from_db()

    for domain in www:
        d = []
        week_old = 14
        days = compute_days(domain)
        if int(days) <= int(week_old):

            d.append("{0} is expiring in {1} days.<br>".format(domain, days))
            print(d)

            html1 = (''.join(d))

            html_body = html_body + html1

            print(html_body)

    html = html_body + html_close

    part2 = MIMEText(html, 'html')

    msg.attach(part2)
Вернуться на верх