django-bitfield er en Django app, der giver et bitfield ligesom klasse (ved hjælp af en BigIntegerField) til dine Django-modeller.
Installation
Installer den med pip (eller easy_install):
pip installere django-bitfield
Anvendelse
Først skal du vedhæfte en bitfield til din klasse. Dette fungerer som en BigIntegerField (BIGINT) i din database:
fra bitfield import bitfield
klasse MyModel (models.Model):
& Nbsp; flags = bitfield (flag = (
& Nbsp; "awesome_flag«,
& Nbsp; "flaggy_foo«,
& Nbsp; "baz_bar«,
& Nbsp;))
Nu kan du bruge feltet ved hjælp af meget velkendte Django operationer:
# Opret modellen
o = MyModel.objects.create (flag = 0)
# Tilføj awesome_flag (virker ikke i SQLite)
MyModel.objects.filter (pk = o.pk) .update (flag = MyModel.flags.awesome_flag)
# Sæt flag manuelt til [awesome_flag, flaggy_foo]
MyModel.objects.filter (pk = o.pk) .update (flag = 3)
# Fjern awesome_flag (virker ikke i SQLite)
MyModel.objects.filter (pk = o.pk) .update (flag = ~ MyModel.flags.awesome_flag)
# Test awesome_flag
hvis o.flags.awesome_flag:
& Nbsp; print "Glade gange!"
# List alle flag på banen
for f i o.flags:
& Nbsp; udskrive f
Krav :
- Django
- Python
Kommentarer ikke fundet