Django request in model

I need to get a request.get_host () inside the model in def. When connecting:

def name(self, request)

the function immediately stops working.

Tell me

sample code:

class Catalog(models.Model):
name = models.CharField(max_length=255, unique=True, verbose_name=_("name"))
slug = models.CharField(max_length=255, unique=True, verbose_name=_("name"), blank=True)
parent = models.ForeignKey('self', verbose_name=_("parent"), null=True, blank=True)
host = models.ForeignKey(fill, verbose_name=_("host"), null=True, blank=True)
isHidden = models.BooleanField(verbose_name=_("hidden"))

def __unicode__(self):
    return self.name

class Meta:
    ordering = ["order_number"]
    verbose_name_plural = _("Catalog")

@models.permalink
def get_absolute_url(self):
    return ('atalog', (), {'slug': self.slug})

def get_child_menu(self, request):
    host = request.get_host()
    child_menu = Catalog.objects.filter(parent=self.id, isHidden=False, host=host).only('name', 'slug')
    return child_menu
Вернуться на верх