django-Braintree jest app Django, który zapewnia łatwy w użyciu interfejs do Braintree za pomocą Django wbudowanego systemu formularza, aby umożliwić programistom Django łatwo skorzystać z funkcji przekierowania Braintree przejrzysty, aby pomóc w kwestii zgodności z PCI DSS.
Moduł obsługuje wszystkie udokumentowane django_braintree pól w oficjalnej dokumentacji przekierowania przejrzysty. Można selektywnie włączyć / wyłączyć pola tak jak wymaga tego scenariusza użytkowania (na przykład ukrywanie adresu wysyłki w formie transakcji).
Moduł ten zależy od modułu Braintree Pythona, więc proszę go najpierw zainstalować.
Prosty przykład:
Pobierz i zainstaluj moduł django_braintree, a następnie utworzyć formularz w jednym z widoków. Zacznij od instalacji modułu w settings.py:
& Nbsp; & nbsp; & nbsp; import Braintree
& Nbsp; & nbsp; & nbsp; INSTALLED_APPS = [
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ...
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "Django_braintree"
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ...
& Nbsp; & nbsp; & nbsp; ]
& Nbsp; & nbsp; & nbsp; # settings piaskownicy Braintree
& Nbsp; & nbsp; & nbsp; BRAINTREE_ENV = braintree.Environment.Sandbox
& Nbsp; & nbsp; & nbsp; BRAINTREE_MERCHANT = "your_merchant_key"
& Nbsp; & nbsp; & nbsp; BRAINTREE_PUBLIC_KEY = "your_public_key"
& Nbsp; & nbsp; & nbsp; BRAINTREE_PRIVATE_KEY = "your_private_key"
& Nbsp; & nbsp; & nbsp; # Jeśli nie można zainstalować M2Crypto (np AppEngine):
& Nbsp; & nbsp; & nbsp; BRAINTREE_UNSAFE_SSL = True
Następnie należy utworzyć widok, aby korzystać z jednego z przejrzystych form przekierowania:
& Nbsp; & nbsp; & nbsp; z django_braintree.forms importu TransactionForm
& Nbsp; & nbsp; & nbsp; MyView def (wniosek):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Wynik = TransactionForm.get_result (wniosek)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Jeśli sukces przekierowanie do strony Dziękujemy
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; jeśli wynik i result.is_success:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; powrót HttpResponseRedirect ("/"), dzięki
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Tworzenie formularza. Musisz przejść w rezultacie uzyskać komunikaty o błędach!
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; myForm = TransactionForm (wynik, redirect_url = "http://mysite.com/myview")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Usuwanie elementów nie musimy
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; myform.remove_section ("Transakcja [shipping_address]")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; myform.remove_section ("Transakcja [kwota]")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; myform.remove_section ("Transakcja [opcje]")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Ustaw pola, który chcemy szła
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; myform.tr_fields ["transakcja"] ["ilość"] = "19.99"
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Generowanie pole tr_data podpisane; To musi się nazywać!
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; myform.generate_tr_data ()
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; powrót render ("template.html", {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "Forma": myForm,
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; })
Następnie w szablonie renderowania formularza jest proste:
& Nbsp; & nbsp; & nbsp;
Wymagania :
- Python
- Django
Komentarze nie znaleziono