I think the best way is to override the Model's save method:

class Structure(models.Model):
    parent
= models.ForeignKey('site.Structure',blank=True,null=True,default=0)
    title = models.CharField(max_length=128,verbose_name=u'Заголовок')
    url = models.CharField(max_length=48,verbose_name=u'URL')
    ordering = models.IntegerField(blank=True,editable=False,default=1)
    level = models.SmallIntegerField(blank=True,editable=False,default=1)

    def save(self, *args, **kwargs):
        if not self.id:
            # If the primary key is not defined, this is a new insertion
            self.ordering = 42 # set magic values
            self.level = 99
        super(Structure, self).save(*args, **args)

2010/5/27 ev <evpozdnia...@gmail.com>

> class Structure(models.Model):
>        parent =
> models.ForeignKey('site.Structure',blank=True,null=True,default=0)
>        title = models.CharField(max_length=128,verbose_name=u'Заголовок')
>        url = models.CharField(max_length=48,verbose_name=u'URL')
>        ordering = models.IntegerField(blank=True,editable=False,default=1)
>        level =
> models.SmallIntegerField(blank=True,editable=False,default=1)
>
> I'd like to set Structure.ordering and Structure.level with special
> values, based on something.
>
> Is there way to provide Structure.before_add(self) method? I need this
> method to be called every time after saving model data.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To post to this group, send email to django-us...@googlegroups.com.
> To unsubscribe from this group, send email to
> django-users+unsubscr...@googlegroups.com<django-users%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/django-users?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to