Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 15, 2015 13:43:15

Rebra4
Зарегистрирован: 2012-06-30
Сообщения: 132
Репутация: +  0  -
Профиль   Отправить e-mail  

Сигналы

Общем есть 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

Офлайн

#2 Апрель 15, 2015 15:14:10

sander
Зарегистрирован: 2015-02-19
Сообщения: 317
Репутация: +  53  -
Профиль   Отправить e-mail  

Сигналы

Rebra4
циклический импорт
или импортируй все в один файл, а потом импортируй из него или можно попробовать делать импорт

from mind.signals import new3000
непосредственно перед
post_save.connect(new3000,sender=User)

Отредактировано sander (Апрель 15, 2015 15:14:26)

Офлайн

#3 Апрель 15, 2015 15:48:39

inoks
От: Russia
Зарегистрирован: 2012-12-11
Сообщения: 343
Репутация: +  35  -
Профиль   Адрес электронной почты  

Сигналы

как вариант:

def new3000(instance,**kwargs):
    from mind.models import UserProfile
    id=instance.id
    a=UserProfile.objects.get(id=id)
    a.avatar_default=1
    print a

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version