django-delegate

Skjermbilde programvare:
django-delegate
Prog.varedetaljer:
Versjon: 0.2.6
Last opp dato: 15 Apr 15
Utvikler: Alexander Bohn
Lisens: Gratis
Popularitet: 8

Rating: 2.0/5 (Total Votes: 1)

django-delegat er en Django app for å få AUTOMATISK CHAINABLE MANAGER / QUERYSET delegat METODER.
Normalt ved å definere leder metoder, lar Django du gjøre dette:
>>> SomeModel.objects.custom_query ()
... Men det vil ikke la deg gjøre dette:
>>> SomeModel.objects.custom_query (). Another_custom_query ()
... Med mindre du duplisere dine metoder og definere en redundant queryset underklasse ... før nå.
Med DelegateManager ogdelegate, kan du skrive vedlikeholds custom-spørring logikk med gratis kjeding. stedet for å definere leder metoder, du definere queryset metoder, dekorere dem du ønsker å delegere, og en to-linje DelegateManager underklasse spesifisere queryset. ET VIOLA. Slik:
fra delegat import DelegateManager, delegere
klasse CustomQuerySet (models.query.QuerySet):
& Nbsp;delegate
& Nbsp; def qs_method (selv, some_value):
& Nbsp; retur self.filter (some_param__icontains = some_value)
& Nbsp; def dont_delegate_me (egen-):
& Nbsp; retur self.filter (some_other_param = "noe annet")
klasse CustomManager (DelegateManager):
& Nbsp; __ queryset__ = CustomQuerySet
klasse SomeModel (models.Model):
& Nbsp; gjenstander = CustomManager ()
# Dette vil fungere:
SomeModel.objects.qs_method ('yo dogg')
# Dette vil også fungere:
SomeModel.objects.qs_method ('yo dogg'). Qs_method («Jeg hørte du liker queryset delegasjon metode ')
Å delegere alle metodene i en QuerySet automatisk, kan du opprette en underklasse av DelegateQuerySet. Disse to QuerySet subklasser fungerer likt:
fra delegat import DelegateQuerySet, delegere
klasse ManualDelegator (models.query.QuerySet):
& Nbsp;delegate
& Nbsp; def qs_method (egen-):
& Nbsp; # ...
klasse AutomaticDelegator (DelegateQuerySet):
& Nbsp; def qs_method (egen-):
& Nbsp; # ...
Du kan også bruke dendelegate dekoratør direkte til en klasse - dette tillater deg å delegere alle metodene i en klasse uten å forstyrre sin arv kjeden. Dette eksempelet fungerer likt til de to foregående:
fra delegat import delegat
delegate
klasse CustomQuerySet (models.query.QuerySet):
& Nbsp; def qs_method (selv, some_value):
& Nbsp; retur self.filter(some_param__icontains=some_value)

Requirements:

  • Python
  • Django

Annen programvare fra utvikleren Alexander Bohn

hdf5-django
hdf5-django

20 Feb 15

h5dj
h5dj

20 Feb 15

Kommentarer til django-delegate

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!