معرفی شرکت ها


djangorave-0.1.2


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Django integration for Flutterwave Rave Card payments and subscriptions
ویژگی مقدار
سیستم عامل -
نام فایل djangorave-0.1.2
نام djangorave
نسخه کتابخانه 0.1.2
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Brendon Delate
ایمیل نویسنده brendon.delate@gmail.com
آدرس صفحه اصلی https://github.com/bdelate/django-rave.git
آدرس اینترنتی https://pypi.org/project/djangorave/
مجوز MIT
# Django Rave ## Project Description This project provides Django integration for [Flutterwave](https://flutterwave.com/) Rave Card payments and subscriptions. Current functionality: - Allow users to make payments (once off and subscription) - Create payment buttons which launch Rave payment modals - Maintain a transaction history linked to users # Requirements - Python >= 3.6 - Django >= 2.0 # Installation ```bash pip install djangorave ``` # Setup Add `"djangorave"` to your `INSTALLED_APPS` Run Django migrations: ```python manage.py migrate ``` Add the following to your `settings.py`: ```python RAVE_PRODUCTION_PUBLIC_KEY = "your key" RAVE_PRODUCTION_SECRET_KEY = "your key" RAVE_SANDBOX_PUBLIC_KEY = "your key" RAVE_SANDBOX_SECRET_KEY = "your key" RAVE_SANDBOX = True ``` The above config will ensure `djangorave` uses your Rave sandbox. Once you are ready to go live, set `RAVE_SANDBOX = False` Add `djangorave` to your `urls.py`: ```python path("djangorave/", include("djangorave.urls", namespace="djangorave")) ``` Add the following url as a webhook in your Rave dashboard. This will be used by Rave to `POST` payment transactions to your site: ```bash http://yoursite.com/djangorave/transaction/ ``` `Note:` while in development, a tool like ngrok (or similar) may prove useful. # Usage `djangorave` provides two models, namely: - The `DRPaymentTypeModel` allows you to create `once off` or `recurring` payment types. When creating a `recurring` payment type, ensure the `payment_plan` field corresponds to the Rave `Plan ID`. - The `DRTransactionModel` creates transactions when Rave POSTS to the above mentioned webhook url. This provides a history of all transactions (once off or recurring), linked to the relevant `DRPaymentTypeModel` and `user`. A payment button can be created as follows: 1. Create a new `PaymentType` using the django admin. 2. In the view where you wish the button to appear, add the above created `PaymentType` to your context, eg: ```python from djangorave.models import DRPaymentTypeModel class SignUpView(TemplateView): """Sign Up view""" template_name = "my_payment_template.html" def get_context_data(self, **kwargs): """Add payment type to context data""" kwargs = super().get_context_data(**kwargs) kwargs["pro_plan"] = DRPaymentTypeModel.objects.filter( description="Pro Plan" ).first() return kwargs ``` 3. In your template, add your button wherever you wish for it to appear as follows: ```python {% include 'djangorave/pay_button.html' with payment_model=pro_plan %} ``` `Note:` You can add multiple buttons to a single template by simply adding multiple plans to your context data and then including each of them with their own `include` tag as above. 4. Add the following script to your django base template (or anywhere in your template heirarchy that ensures it is loaded before your payment buttons): ```html <script src="{% static 'djangorave/js/payment.js' %}"></script> ``` # Button Styling The following css classes are available for styling your payment buttons: - `rave-pay-btn` will apply to all buttons. - `rave-subscription-btn` will apply to recurring payment types (ie: those with a `payment_plan`). - `rave-onceoff-btn` will apply to once off payment types (ie: those without a `payment_plan`). # Transaction Detail Page Following a user payment, they will be redirected to the transaction detail page located at `/djangorave/<str:reference>/` A default transaction detail template is already available, however if you want to override it, you may do so by creating a new template in your root templates directory, ie: `/templates/djangorave/transaction.html` You will have access to `{{ transaction }}` within that template. # Development If you wish to contribute to the project, there is an example app that demonstrates general usage. ### Running the example: ```bash git clone https://github.com/bdelate/django-rave.git cd django-rave make build make migrate make import make dup ``` There is a section at the bottom of `django-rave/example/example/settings.py`. Ensure the values are set accordingly: ```python RAVE_PRODUCTION_PUBLIC_KEY = "your key" RAVE_PRODUCTION_SECRET_KEY = "your key" RAVE_SANDBOX_PUBLIC_KEY = "your key" RAVE_SANDBOX_SECRET_KEY = "your key" RAVE_SANDBOX = True ``` Flutterwave Rave requires payments to be associated with users who have an email address. Therefore, create and login with a new django user or use the existing user already generated following the above import command: ``` username: testuser password: secret ``` Navigate to http://localhost:8000/


نیازمندی

مقدار نام
>=2.2,<4 django
>=2.22,<3.0 requests
>=3.10,<4.0 djangorestframework


زبان مورد نیاز

مقدار نام
>=3.6,<4 Python


نحوه نصب


نصب پکیج whl djangorave-0.1.2:

    pip install djangorave-0.1.2.whl


نصب پکیج tar.gz djangorave-0.1.2:

    pip install djangorave-0.1.2.tar.gz