konval

Sagteware kiekie:
konval
Sagteware besonderhede:
Weergawe: 0.3
Upload datum: 11 May 15
Ontwikkelaar: Paul-Michael Agapow
Lisensie: Gratis
Populariteit: 4

Rating: nan/5 (Total Votes: 0)

Agtergrond
Validering en omskakeling van data.
Die probleem van reinig data (kontrole korrektheid en die transformasie van 'n bruikbare vorm) is wydverspreid in programmering:
- Hoe kan ek seker die gebruiker se toevoer is korrek?
- Hoe kan ek munge data van 'n spreadsheet in datums en nommers?
- Hoe kan ek rou databasis velde te omskep in 'n programmatiese voorwerp?
Ian Bicking vorendag gekom met 'n sinvolle idioom vir hierdie probleem, vergestalt in sy Formencode biblioteek [formencode]: validering en bekering is een en dieselfde ding, en kan deur 'rou data deur middel van 'n ketting van validators hanteer word. Elke validator tjeks en / of verander die data en stuur dit na die volgende.
In hierdie gees, konval is 'n pakket wat verskaf:
- 'N ryk biblioteek van validering voorwerpe
- Basis klasse vir maklik die vervaardiging van persoonlike validators
- Funksies maklik met behulp van validators in 'n verskeidenheid van maniere
Status
konval is in 'n verkennende staat, nadat geproduseer na 'n ander pakket ondersteun en kyk of gebruik kan word het uit veralgemening bekering. As sodanig. dit is nog steeds 'n vroeë vrylating en die API kan verander. Kommentaar word uitgenooi.
Installasie
Die eenvoudigste manier om konval installeer is via easy_install [setuptools] of 'n ekwivalente program:
easy_install konval
Alternatiewelik kan die tarball kan afgelaai word, uitgepak en setup.py run:
 teer zxvf konval.tgz
& Nbsp; cd konval
& Nbsp; python set.py installeer
konval is 'n module wat geen voorvereistes het en moet werk met net oor enige weergawe van Python.
konval Gebruik
'N Volledige API is ingesluit in die bron verspreiding.
Voorbeelde
Mees algemeen, sal konval gebruik word om te kyk of skoon waardes. Mislukkings lei uitsonderings gegooi:
# Omskep toevoer van die gebruiker om 'n werklike heelgetal
>>> Van konval invoer *
>>> Sanitize ('1.0', ToInt ())
1
>>> Sanitize ("een", ToInt ())
Stapelspoor (mees onlangse oproep laaste)
...
ValueError: kan nie omskep '1.0 "Integer
'N Enkele validator of lys kan oorgedra word na reiniging. Mislukking in enige sal lei tot 'n uitsondering:
# Check 'n lys het nie meer as 3 lede
>>> Sanitize (['n "," b "," c "], [ToLength (), IsEqualOrLess (3)])
3
# Gaan 'n wagwoord is lank genoeg
>>> Sanitize ('mypass' [ToLength (), IsEqualOrMore (8)])
Stapelspoor (mees onlangse oproep laaste)
...
ValueError: 6 is laer as 8
Enige call able voorwerp wat 'n enkele waarde aanvaar en terug kan gebruik word as 'n validator:
>>> Uit string invoer *
>>> Sanitize ("my titel" [strook, kapitaliseer])
"My titel '
'N ryk biblioteek van voortgang validators verskaf:
>>> Sanitize ('abcde, IsNonblank ())
'Abcde'
>>> Sanitize (5, IsInRange (1,6))
5
>>> Sanitize ('cat', Synonyms ({'cat': 'bar', 'roof': 'quux'}))
'Bar'
Custom validators kan maklik subclassed van 'n verskaf basis klas:
klas IsFoo (BaseValidator):
& Nbsp; def validate_value (self, waarde):
! & Nbsp; as waarde = 'cat':
& Nbsp; self.raise_validation_error (waarde)
& Nbsp; terugkeer True

Wat is nuut in hierdie release:

  • Herdoop 'n paar validators om meer konsekwent skema. Name moet nou vasgestel word.

Vereistes :

  • Python

Beperkings :

  • konval is daarop gemik om 'n een-way transformasie van data, draai die gebruiker se toevoer of gestoor data in Python voorwerpe. Sekerlik is dit gebruik kan word in die teenoorgestelde rigting, maar dit is nie 'n primêre gebruik geval. FormEncode is gebaseer rondom twee-rigting (ronde trip) omskakeling van data, sodat 'n nuttige alternatief kan wees.

  • Die naam konval is gekies omdat:
  • daar is reeds 'n Python biblioteek genoem & quot; gesonde verstand & quot;
  • uit & quot; & quot ;, valcon & quot; & quot ;, Valkon & quot; conval & quot; ens dit was die een met die minste treffers op Google

Ander sagteware ontwikkelaar Paul-Michael Agapow

qanda
qanda

11 May 15

Kommentaar te konval

Kommentaar nie gevind
Kommentaar te lewer
Draai op die foto!