django-payme er en Django app for håndtering av elektroniske betalinger. Det kan fungere med alle eksisterende oppsett uten behov for å endre andre applikasjoner 'modeller.
Enhver modell som orden, egentlig?
Ja, takket være stor AbstractMixin vi kan feste Betaling modell til en annen modell, som representerer en ordre, enkelt element, abonnement, donasjon ... uansett. Vi bruker ikke generiske relasjoner her, men gode gamle ForeignKey som gjør dataene konsistente på DB nivå.
Det er ingen krav til grensesnitt ordens modell (det trenger ikke å bli kalt rekkefølge, heller). Det eneste du trenger å gjøre, er å gjennomføre grunnleggende sett med signal lyttere som henter viktige data fra din bestilling.
Disse signalene kan ligge i et frittstående program, så det er ikke nødvendig å røre koden av programmet inneholder for modellen.
OK, fortell meg hvordan du bruker den!
Først av alt, må du installere Mamona og legge den til din settings.py fil.
For det andre bør du aktivere backends i settings.py og konfigurere viktige parametere for gatewayer. Følgende eksempel er for testing, bruker PayPal sandkasse server og en test modul kalt dummy.
MAMONA_ACTIVE_BACKENDS = (
& Nbsp; 'dummy',
& Nbsp; 'paypal',
)
MAMONA_BACKENDS_SETTINGS = {
& Nbsp; 'paypal': {
& Nbsp; 'url': 'https://www.sandbox.paypal.com/cgi-bin/webscr',
& Nbsp; 'e': 'me@my-email.com',
& Nbsp;}
}
Tredje, å vite hvordan din ordre modell og det er miljø er organisert, må du innføre lyttere for to signaler:
- Return_urls_query, hvor du gir tilbake webadresser for vellykkede og mislykkede betalinger.
- Order_items_query, hvor du fyller en liste over ordre (eller bare returnere enkelt element for enkle ordrer).
Til slutt, bygge en betalingsmodell koblet sammen med din bestilling modell:
fra mamona.models import build_payment_model
Betaling = build_payment_model (MyOrderModel, unike = Sant, related_name = 'betalinger')
For å sjekke et eksempel på implementering, se test-prosjekt /. Og også vise til kildekoden til Mamona selv
Egenskaper .
- godtar enhver modell som orden og skaper ForeignKey forhold til det,
- krever ingen grensesnitt på ordre modell,
- kan håndtere ulike betalingsløsninger, bare ved å aktivere backends (for øyeblikket, bare PayPal og testing & quot; dummy & quot; backends er til stede),
- kan passere elementer liste og kundedata til betaling gateway,
- tilbyr signaler å se betaling fremgang.
Krav
- Python
Kommentarer ikke funnet