小编dam*_*mon的帖子

Django Html电子邮件为电子邮件正文添加了额外的字符

我正在使用Django发送一封包含文本部分和HTML部分的电子邮件.这是代码:

    subject = request.session.get('email_subject', None)
    from_email = request.session.get('user_email', None)
    to = request.session.get('user_email', None)
    bcc = [email.strip() for email in request.session.get('email_recipients', None).split(settings.EMAIL_DELIMITER)]

    text_content = render_to_response(email_text_template, {
        'body': request.session.get('email_body', None),
        'link': "http://%(site_url)s/ecard/?%(encoded_greeting)s" % {
            'site_url': settings.SITE_URL,
            'encoded_greeting': urlencode({'g': quote_plus(request.session.get('card_greeting'))}),
        },
    }, context_instance=RequestContext(request))

    html_content = render_to_response(email_html_template, {
        'body': request.session.get('email_body', None),
        'link': "http://%(site_url)s/ecard/?%(encoded_greeting)s" % {
            'site_url': settings.SITE_URL,
            'encoded_greeting': urlencode({'g': request.session.get('card_greeting')}),
        },
        'site_url': settings.SITE_URL,
    }, context_instance=RequestContext(request))

    email = EmailMultiAlternatives(subject, text_content, from_email, [to], bcc)
    email.attach_alternative(html_content, "text/html")
    sent = email.send()

当用户收到电子邮件时,其中包含以下文本:"Content-Type:text/html; charset = utf-8".有没有一个好方法摆脱这个?

python email django

2
推荐指数
1
解决办法
1050
查看次数

我正在使用Django与远程Oracle数据库,并获得"表不存在"错误

每当我在远程Oracle数据库的表上使用Django ORM执行简单查询时,我都会收到此错误:

>>> from apps.dl.models import Article
>>> Article.objects.using('dl').all()
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/query.py", line 68, in __repr__
    data = list(self[:REPR_OUTPUT_SIZE + 1])
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/query.py", line 83, in __len__
    self._result_cache.extend(list(self._iter))
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/query.py", line 269, in iterator
    for row in compiler.results_iter():
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 672, in results_iter
    for rows in self.execute_sql(MULTI):
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 727, in execute_sql
    cursor.execute(sql, params)
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/backends/util.py", line 15, in execute
    return self.cursor.execute(sql, params)
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/backends/oracle/base.py", line 507, in …
Run Code Online (Sandbox Code Playgroud)

oracle django multiple-databases ora-00942

2
推荐指数
1
解决办法
1715
查看次数

Django 对布尔字段进行注释

class Forecast(Model):
    id = UUID()
    type = StringField()
    approved = BooleanField()
Run Code Online (Sandbox Code Playgroud)

type我想通过在批准的字段上应用“逻辑与”来对该字段进行分组。假设带注释的字段是all_approved. all_approved如果该类型的所有项目都为 True,则应为 True;如果至少有一项为 False,则应为 false。

所以最后在我的查询集中我想要有两个字段type, all_approved

我怎样才能做到这一点?

我根据这个答案尝试了一些东西,但什么也没得到。

编辑:

当我尝试该答案中给出的内容时,它没有执行“逻辑与”。相反,对于每个type项目,它只给出两项,一项为all_approvedTrue,另一项all_approved为 False。我想要每个项目一个type

我也不明白为什么这个答案应该有效。在哪里指定分组时是否应该执行“逻辑与”或“逻辑或”。

django postgresql django-queryset

2
推荐指数
1
解决办法
4962
查看次数

如何在这个正则表达式中转义字符?

我有这个功能,它将验证一个电子邮件地址.jsLint给出正则表达式的错误,抱怨某些字符是未转义的.

有没有办法正确逃脱它们?

var validateEmail = function(elementValue){
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    return emailPattern.test(elementValue);
};
Run Code Online (Sandbox Code Playgroud)

javascript regex jslint

1
推荐指数
1
解决办法
216
查看次数

Python值解包错误

我正在构建一个使用Django的每用户文件浏览/上传应用程序,当我运行此功能时


def walkdeep(request, path):
    path, dirs, files = walktoo('/home/damon/walktemp/%s' % path)
    return render_to_response('walk.html', {
        'path' : path[0],
        'dirs' : path[1],
        'files' : path[2],
    }, context_instance=RequestContext(request))

def walktoo(dir):
    for path, dirs, files in os.walk(dir):
        yield path, dirs, files
    print path, dirs, files
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

need more than 1 value to unpack

此外,我知道这是一个愚蠢的方式,任何建议将不胜感激.

编辑:

这对我来说实际上非常愚蠢,我完全忘记了os.listdir(dir),这对我的目的来说是一个更合理的功能.如果您使用所选答案,它会清除我遇到的上述问题,但不会清除我想要的结果.

python django

0
推荐指数
1
解决办法
4194
查看次数

在Python中,获得最接近二维整数的最佳方法是什么?

我有一个二维元组列表,未分类和n大小.我想找到哪个元组与X和Y的维度最接近.最好的方法是什么?

target = (75, 75)
values = [
    (38, 61),
    (96, 36),
    (36, 40),
    (99, 83),
    (74, 76),
]
Run Code Online (Sandbox Code Playgroud)

使用targetvalues,方法应该产生答案(74, 76).

编辑

下面答案让我想到了这个确切的方法,对于那里的任何人:

def distance(item, target):
    return ((item[0] - target[0]) ** 2 + (item[1] - target[1]) ** 2) ** 0.5

best = min(values, key=lambda x: distance(x, target))
Run Code Online (Sandbox Code Playgroud)

这是笛卡尔距离问题.

  1. 首先取测试值的平方x减去最佳x值.
  2. 然后取测试值的平方y减去最佳y值.
  3. 最后取步骤1的平方根加上步骤2,它给你距离.
  4. 将其应用于列表中的所有项目,最低编号(使用该min功能)将为您提供最佳选择.

python

0
推荐指数
1
解决办法
174
查看次数