Python Django的信号不起作用,尽管所有东西都放好了

Python Django的信号不起作用,尽管所有东西都放好了,python,django,django-signals,Python,Django,Django Signals,我的案例 在我的例子中,User是默认的django用户模型,我已经创建了一个配置文件来向用户模型添加更多细节。 实现 现在我想要的是,每当我创建一个新用户时,应该自动创建该用户的配置文件。 我已经完成了 1.我已经检查了signals.py文件,也在apps.py文件中导入了信号,但仍然没有为每个正在创建的新用户创建nw配置文件:( 2.尝试将“users.apps.UsersConfig”添加到我已安装的应用程序中,但没有成功。 下面的代码 我在下面的signals.py和apps.py文件

我的案例
在我的例子中,User是默认的django用户模型,我已经创建了一个配置文件来向用户模型添加更多细节。
实现
现在我想要的是,每当我创建一个新用户时,应该自动创建该用户的配置文件。
我已经完成了
1.我已经检查了signals.py文件,也在apps.py文件中导入了信号,但仍然没有为每个正在创建的新用户创建nw配置文件:(
2.尝试将“users.apps.UsersConfig”添加到我已安装的应用程序中,但没有成功。
下面的代码
我在下面的signals.py和apps.py文件中提供了代码。 如果你需要更多的代码,请问我 提前感谢:)

这是我的signals.py文件

#This is the signal that will be sent
from django.db.models.signals import post_save

#This is the object which will send the signal
from django.contrib.auth.models import User

#This will receive the signal
from django.dispatch import receiver

#We need this to perform operations on profiles table
from .models import Profile

#This function creates new profile for each user created
@receiver(post_save, sender=User)
def create_profile(sender, instance, created, **kwargs):
    if created:
        Profile.objects.create(user=instance)

#This function saves those newly created profiles
@receiver(post_save, sender=User)
def save_profile(sender, instance, **kwargs):
    instance.profile.save()
这是我的apps.py文件

from django.apps import AppConfig
class UsersConfig(AppConfig):
    name = 'users'

    def ready(self):
        import users.signals

以下是我安装的应用程序

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
 #Custom Apps
'product',
'shop',
'market',
'pages',
'users',
]

我在已安装的应用程序中使用了“users”,而不是“users.APPS.UsersConfig”。
我新安装的工作应用程序如下所示:

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
#Custom Apps
'product',
'shop',
'market',
'pages',
'users.apps.UsersConfig', #Signals wont work if you just write 'users'
]

或者只参考一个类似的问题:

和is
用户.apps.UsersConfig
在您的
安装的应用程序中
?另外,自定义用户模型是拥有自定义配置文件的一种更现代、更不容易出错的方式。@AKX不,它没有放在那里,我在安装的应用程序中放了“users.apps.UsersConfig”,现在它在重新启动服务器时给我这个错误:“django.core.exceptions.impropertlyconfigured:应用程序标签不是唯一的,d个副本:用户”我尝试使用post_save.connect()方法,它对我来说工作正常。但我仍然想知道为什么它不能用我以前的方式工作。@AKX是的,你是对的,谢谢:)作为旁白,你也可以在
users/\u init\uuuuuuuupy
中添加
默认应用程序配置='users.apps.UsersConfig'
,它将
用户',
重定向到t点o配置文件。是的,这很有帮助。