0

我正在使用django_bootstrap.py类似的错误,但我找不到解决方案。我正在使用 django 助手(请不要建议非 rel)

我想做的是,在一个静态 html js 网站中,通过联系表格附加发送邮件的功能。表单将获取数据,jQuery 将验证并向 URL“/sendmail/”发出 POST AJAX 请求,views.py 我有以下代码:

def sendmail(request):
    logging.info("here1")
    msg = request.POST['comment'];    sub = request.POST['subject']
    name = request.POST['name'];    frm = request.POST['email']
    sender = name + " " + frm
    logging.info(sender)
    a = mail.send_mail(sender=sender,
              to="to@example.com",
              subject=sub,
              body=msg)
    logging.info(request)
    logging.info(a)
    return http.HttpResponse("1")

当我删除该行时,我绝对没有错误:

a = mail.send_mail(sender=sender,
                  to="to@example.com",
                  subject=sub,
                  body=msg)

但是,随着那条线的存在,我收到以下错误:

<class 'django.core.exceptions.ImproperlyConfigured'>: You haven't set the DATABASE_ENGINE setting yet.

我查看我的 settings.py 文件并尝试进行一些更改: 1 添加两行,如在 django-nonrel settings.py 中所做的那样

   DATABASES['native'] = DATABASES['default']
   DATABASES['default'] = {'ENGINE': 'dbindexer', 'TARGET': 'native'}

这在服务器上给出了 500 错误,并且页面没有打开。

2 我试着把

   DATABASE_ENGINE = 'dummy'

这在本地工作,但在服务器(appspot)上不起作用。

3 我试着把

DATABASE_ENGINE = 'appengine'

这也给出了 500 错误。

请让我知道如何解决它。

4

2 回答 2

0

如果您的应用程序中没有使用数据库,则可以DATABASES = {}在 settings.py 文件中进行设置。这将解决“您尚未设置 DATABASE_ENGINE 设置”的问题。

于 2012-09-08T11:46:48.167 回答
0

这看起来以各种方式搞砸了。不要使用 bootstrap.py,它在尝试加载 django 0.96 时看起来已经过时了。GAE 现在支持 django 1.3。

请不要使用 django 助手。它没有被任何人维护或支持。如果遇到问题,解决方案是升级到 nonrel。

我建议正确安装 django-nonrel。请记住 django-nonrel 是 django 的完全替代品。大部分是相同的,但有些部分经过修改以与 appengine 后端一起使用。你不能拿 django-nonrel 的碎片并期望它与普通的 django 一起工作,而没有一点黑客。设置文件中的 DATABASES 行仅适用于 django-nonrel。

http://www.allbuttonspressed.com/projects/djangoappengine

Django 助手没有使用 appengine 的电子邮件 API 的电子邮件后端。这在 Django-nonrel 的 djangoappengine 包中可用。

于 2012-03-23T15:45:38.077 回答