[BangPypers] Django - Infinte Loop

Arun Ravindran arunvr at gmail.com
Fri Jul 11 12:55:05 CEST 2014


Hi,

>From Django 1.7 onwards, the proper way to register signals will be inside
a ready function
<https://docs.djangoproject.com/en/dev/ref/applications/#django.apps.AppConfig.ready>
in the app's configuration object. This is thanks to the App-loading
refactor done in the release.

In your case, as mentioned in the docs, create an myapp/apps.py with :

from django.apps import AppConfig

class MyAppConfig(AppConfig):
    def ready(self):
        MyModel = self.get_model('MyModel')
        signals.post_save.connect(my_func, sender=MyModel)

Also add a line to myapp/__init__.py :

default_app_config = 'myapp.apps.MyAppConfig'

This would eliminate circular imports.

Cheers,
Arun



On Fri, Jul 11, 2014 at 12:37 PM, Anand Reddy Pandikunta <
anand21nanda at gmail.com> wrote:

> I have overrided model save.
> Moved couple of functions from models.py to tasks.py which lead to circular
> imports.
> Instead of importing models at the beginning of file, I've imported them in
> the functions.
>
> Thank you @krace, @navin, @pradip :)
>
>
>
> On Thu, Jul 10, 2014 at 11:12 AM, Pradip Caulagi <ppc.lists at gmail.com>
> wrote:
>
> > On Tuesday 08 July 2014 01:13 PM, Anand Reddy Pandikunta wrote:
> >
> >> Hi,
> >>
> >> *models.py*
> >>
> >> *def my_func(sender, instance, created, **kwargs):*
> >> *      # do something*
> >> *      instance.status = 'task completed'*
> >> *      instance.save()*
> >>
> >> *class MyModel(models.Model):*
> >> *      status = models.CharField(max_length=100, blank=True)*
> >> *      # some code*
> >>
> >> *signals.post_save.connect(my_func, sender=MyModel)*
> >>
> >
> > Like others have noted, you should override model save.  Another option
> > would be to use pre_save.  Just set instance.status and don't call
> > instance.save?
> >
> > _______________________________________________
> > BangPypers mailing list
> > BangPypers at python.org
> > https://mail.python.org/mailman/listinfo/bangpypers
> >
>
>
>
> --
> - Anand Reddy Pandikunta
> www.avilpage.com
> www.quotes160.com
> _______________________________________________
> BangPypers mailing list
> BangPypers at python.org
> https://mail.python.org/mailman/listinfo/bangpypers
>


More information about the BangPypers mailing list