Найти - Пользователи
Полная версия: Сигналы
Начало » Django » Сигналы
1
Rebra4
Общем есть signals.py и models.py
signals.py
from mind.models import UserProfile
def new3000(instance,**kwargs):
	id=instance.id
	a=UserProfile.objects.get(id=id)
	a.avatar_default=1
	print a
models.py
from django.contrib.auth.models import User
from mind.signals import new3000
class UserProfile(models.Model):
    user = models.OneToOneField(User)
    avatar_default=models.IntegerField()
    avatar = models.ImageField(upload_to='images/users', verbose_name='Изображение')
##########################################################################
post_save.connect(new3000,sender=User)
Ошибка
Validating models...
Unhandled exception in thread started by <function wrapper at 0x20d0758>
Traceback (most recent call last):
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/utils/autoreload.py", line 93, in wrapper
    fn(*args, **kwargs)
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 101, in inner_run
    self.validate(display_num_errors=True)
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/core/management/base.py", line 310, in validate
    num_errors = get_validation_errors(s, app)
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/core/management/validation.py", line 34, in get_validation_errors
    for (app_name, error) in get_app_errors().items():
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/db/models/loading.py", line 196, in get_app_errors
    self._populate()
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/db/models/loading.py", line 78, in _populate
    self.load_app(app_name)
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/db/models/loading.py", line 99, in load_app
    models = import_module('%s.models' % app_name)
  File "/home/alex/nextstep/newsite/local/lib/python2.7/site-packages/django/utils/importlib.py", line 40, in import_module
    __import__(name)
  File "/home/alex/nextstep/newsite/newsite/mind/models.py", line 15, in <module>
    from mind.signals import new3000
  File "/home/alex/nextstep/newsite/newsite/mind/signals.py", line 3, in <module>
    from mind.models import UserProfile
ImportError: cannot import name UserProfile
sander
Rebra4
циклический импорт
или импортируй все в один файл, а потом импортируй из него или можно попробовать делать импорт
from mind.signals import new3000
непосредственно перед
post_save.connect(new3000,sender=User)
inoks
как вариант:

def new3000(instance,**kwargs):
    from mind.models import UserProfile
    id=instance.id
    a=UserProfile.objects.get(id=id)
    a.avatar_default=1
    print a
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB