小编zzl*_*tle的帖子

Django Celery发送注册邮箱不起作用

我正在学习芹菜.在我的网站上,我让人们注册一个帐户.创建新帐户后,它会自动向其用户电子邮件地址发送激活电子邮件.

一切都运作良好,但现在我想使用Celery异步发送电子邮件.

我使用RabbitMQ作为代理,版本3.1.5和Celery 3.1.7(最新版本),因为他们说这个版本不需要djcelery.所以我只需要安装Celery.

我按照celery的说明在其网站上配置了我的django.

proj
  --proj/celery.py
Run Code Online (Sandbox Code Playgroud)

这是我的celery.py:

from __future__ import absolute_import

import os

from celery import Celery

from django.conf import settings

# set the default Django settings module for the 'celery' program.
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'proj.settings')

app = Celery('proj')

# Using a string here means the worker will not have to
# pickle the object when using Windows.
app.config_from_object('django.conf:settings')
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)

@app.task(bind=True)
def debug_task(self):
    print('Request:{0!r}'.format(self.request))
Run Code Online (Sandbox Code Playgroud)

这是我放在app文件夹中的tasks.py:

proj
 ---proj/celery.py
 ---app/tasks.py
Run Code Online (Sandbox Code Playgroud)

tasks.py

from __future__ import absolute_import

from celery.decorators import …
Run Code Online (Sandbox Code Playgroud)

python django celery

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

psycopg2如何处理TypeError:不是在字符串格式化过程中转换的所有参数

我有一个简单的数据库查询psycopg2但我不知道为什么它总是显示错误这里是代码

ip ="127.0.0.1"
 sql="select count(*) from radacct where nasipaddress=%s"
 cur.execute(sql,ip)
Run Code Online (Sandbox Code Playgroud)

然后它会显示出来

TypeError:并非在字符串格式化期间转换所有参数

如果我以这种方式尝试

cur.execute("select count(*) from radacct where nasipaddress=%s" % ip)
Run Code Online (Sandbox Code Playgroud)

它仍然无法正常工作

我怎样才能以正确的方式将参数传递给psycopg2.请帮助我!

python postgresql psycopg2

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

对于forms.py,django'str'对象没有属性'get'错误

我只是为用户注册创建一个表单代码在这里

forms.py

from django import forms
from django.conf import settings
from django.contrib.auth import get_user_model



def lowercase_email(email):
        """
        Normalize the address by lowercasing the domain part of the email
        address.
        """
        email = email or ''
        try:
            email_name, domain_part = email.strip().rsplit('@', 1)
        except ValueError:
            pass
        else:
            email = '@'.join([email_name.lower(), domain_part.lower()])
        return email

class SignupForm (forms.ModelForm):

    username =forms.CharField( 
        label='username',required=True,max_length=20,min_length=3)
    email = forms.EmailField( 
        label='email',required=True)
    password =forms.CharField( 
        label='pssword',required=True,max_length=20,min_length=6,widget = forms.PasswordInput)
    confirm_password= forms.CharField(
        label='confirm_email',required=True,max_length=20,min_length=6,widget = forms.PasswordInput)

    class Meta:
        model = get_user_model()
        fields = ("username","email","password","confirm_password",)




    def …
Run Code Online (Sandbox Code Playgroud)

python django

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

标签 统计

python ×3

django ×2

celery ×1

postgresql ×1

psycopg2 ×1