anyit.djattributes is 'n Django app wat daarop gemik is om arbitrêre eienskappe vir enige model te voorsien sonder om te raak dit. & Nbsp; Die buigsaamheid gewen betaal is met die spoed verloor, wat voor die hand liggend sal wees in grootskaalse programme met digte data.
Mind die gaping
Ek is 'n bietjie bekommerd oor die feit dat nie voldoen aan die filosofie Django. Maak seker dat jy dit nie gebruik vir grootskaalse nie yl data dinge. Ek was net gepla met 'n boom struktuur met arbitrêre, pad afhanklik eienskappe. Dit is waarom ek dit gedoen het. As ek dit kon vermy het ek my modelle meer vasgespyker.
Installasie :
& Nbsp; kopieer Net die gids eienskappe om jou huidige Django projek en sluit 'skryf' in jou instellings.
& Nbsp; Of installeer dit met behulp van sudo easy_install anyit.djattributes en sluit 'anyit.djattributes.attributes.
Gebruik :
'N JavaScript / JQuery soos notasie geïmplementeer en deur 'n eenvoudige koppelvlak klas genoem attr. Geen hoofletter soos in gewone classnames probeer om te maak dit voel soos JQuery.
Tipe koppelvlakke
& Nbsp; attr.create_type (naam, beskrywing, tipe) # Skep 'n tipe. Kyk na die __doc__ vir verdere inligting oor die soorte en hoe hulle voorgestel word. Deur nou die internal_types int, float, string, teks, unicode, klas (enige pickleable voorwerp) en contenttype (met behulp van 'n Django gereric sleutel).
& Nbsp; attr.delete_type (naam) # versigtig! Die waterval sal enige waardes te vernietig (nie draer!) Van die gegewe tipe.
Draer koppelvlakke
& Nbsp; attr (eienaar) # Sal 'n lys van die eienskappe terugkeer vir die gegewe eienaar.
& Nbsp; attr (eienaar, naam) # terugkeer die eienaars skryf met 'n gegewe naam of Geen.
& Nbsp; attr (eienaar, naam, waarde) # ... stel sy waarde of te verhoog as die tipe is nie koscher.
& Nbsp; attr (eienaar, naam, waarde, create_attributetype, create_attribut, Klaß beskrywing) # create_attributetype kies tussen die skep van 'n attributetype met die gegewe naam, tipe bepaal deur die gegewe waarde en die na die gegewe naam beskrywing as 'n beskrywing is nie eksplisiet voorsien. create_attribute sal 'n gegewe eienskap assosieer met 'n draer wat nog nie is aangeheg met 'n soort kenmerk soos gegee of 'n NameError samel. Klass kies om af te dwing die kenmerk wat aan 'n model, selfs as 'n geval word.
Kenmerk koppelvlakke
& Nbsp; attr.find (kenmerk) # Sal die eienaar van 'n gegewe eienskap terug
& Nbsp; attr.find (naam) # Sal 'n lys van die eienskappe terugkeer vir die kenmerk tipe van die gegewe naam
& Nbsp; attr.find (naam, waarde) # Sal 'n lys van die eienskappe terugkeer vir die kenmerk tipe van die gegewe naam wat ooreenstem met die waarde
Vernietigende koppelvlakke
& Nbsp; attr.delete () # sal al die eienskappe verwyder
& Nbsp; attr.delete (naam) # sal al die eienskappe wat die gegewe tipe verwyder.
& Nbsp; attr.delete (voorwerp) # sal verwyder al die eienskappe wat aan die gegewe voorwerp of klas
Wat is nuut in hierdie release:
.
- Bygevoeg batch verwerking vir (o) bjects indien geslaag as lys argument.
- Bygevoeg batch verwerking vir (n) Ames as wat sal wys (indien geslaag as dict argument) of retreive (list) verskeie eienskappe.
- Bygevoeg naamruimte soos retreivel van geneste dict elemente met behulp van punte (.).
Vereistes :
- Python
- Django
Kommentaar nie gevind