anyit.djattributes on Django app jolla pyritään tarjoamaan mielivaltaisia ominaisuuksia mistään mallia koskettamatta sitä. & Nbsp; joustavuus voitti maksetaan nopeudella menetetty, josta tulee ilmeisiä suuria skaalataan sovelluksia tiheä tietoihin.
Mind aukko
Olen hieman huolissani tästä on ei yhteensopiva django filosofiaa. Varmista, ettet käytä tätä laajamittaiseen kuin harvan tietojen kamaa. Olin juuri vaivautunut puurakenne joka sisältää mielivaltaista, polkuriippuvaisiin määritteitä. Siksi tein sen. Jos olisin voinut välttää tämän sain malleja enemmän naulattu alas.
asennus :
& Nbsp; Kopioi määritteet kansio nykyisen django projekti ja sisältää "attribuutteja 'in asetukset.
& Nbsp; tai asentaa sen käyttämällä sudo easy_install anyit.djattributes ja sisältävät "anyit.djattributes.attributes".
Käyttö :
Javascript / JQuery kuten merkintä toteutetaan ja tarjoaa yksinkertaisen käyttöliittymän luokan nimeltä attr. Ei iso kirjain kuten tavallista classnames yrittää tehdä tuntua JQuery.
Tyyppi rajapinnat
& Nbsp; attr.create_type (nimi, kuvaus, tyyppi) # Luo tyyppiä. Katsokaa __doc__ edelleen tietoa tyypit ja miten ne ovat edustettuina. Nyt internal_types int, float, string, tekstiä, Unicode, luokka (mahdolliset pickleable objekti) ja ContentType (käyttäen django Yleiskäyttäjäprofiili avain).
& Nbsp; attr.delete_type (nimi) # Varovasti! Cascade tuhoaa kaikki arvot (ei kantaja!) On antanut tyyppiä.
Carrier rajapinnat
& Nbsp; attr (omistaja) # Will return luetteloa attribuutteja annettiin omistajalle.
& Nbsp; attr (omistaja, nimi) # palauttaa omistajille määrite kanssa etunimi tai Ei mitään.
& Nbsp; attr (omistaja, nimi, arvo) # ... Aseta sen arvo tai korottaa, jos tyyppi ei ole KOSCHER.
& Nbsp; attr (omistaja, nimi, arvo, create_attributetype, create_attribut, klass, kuvaus) # create_attributetype valitsee joko luomalla ominaisuustyyppi kanssa etunimi, tyyppi määräytyy annetun arvon ja kuvauksen asetettu etunimeä, jos kuvausta ei ole eksplisiittisesti säädetty. create_attribute yhdistävät tietyn ominaisuuden kantajan kanssa, joka ei ole vielä kiinnitetty ominaisuuden tyyppiä, kuten antanut tai korottaa NameError. klass valitsee valvoa määrite on kiinnitetty malliin, vaikka esimerkiksi annetaan.
Taito rajapinnat
& Nbsp; attr.find (attribuutti) # Will return omistaja tietyn ominaisuuden
& Nbsp; attr.find (nimi) # Will return luetteloa attribuutteja ominaisuuden tyyppi etunimi
& Nbsp; attr.find (nimi, arvo) # Will return luetteloa attribuutteja ominaisuuden tyyppi etunimi vastaavat arvo
Tuhoisa rajapinnat
& Nbsp; attr.delete () # poistaa kaikki määritteet
& Nbsp; attr.delete (nimi) # poistaa kaikki määritteet, joilla tietyn tyyppiselle.
& Nbsp; attr.delete (objekti) # poistaa kaikki ominaisuudet on kiinnitetty tietyn esineen tai luokka.
Mikä on uusi tässä julkaisussa:
- Lisätty erän käsittelyä varten (o) bjects jos se hyväksytään luettelona argumentin.
- Lisätty erän käsittelyä varten (n), Ames, jos joka luovuttaa (jos välitetään dict argumentti) tai voitu hakea (lista) useita määritteitä.
- lisätyt nimiavaruuden, kuten retreivel sisäkkäisiä dict elementtien avulla pistettä (.).
vaatimukset
- Python
- Django
Kommentteja ei löytynyt