Flutterwave를 사용하여 Django 전자 상거래 포털에서 결제 수금 ~PART 1
제 이름은 Nick이고 이 2부작 자습서에서는 Django을 사용하여 간단한 전자 제품 매장을 만든 다음 Flutterwave을 사용하여 고객으로부터 지불금을 받을 것입니다.
프로젝트 설정
데스크톱 디렉토리로 이동하고 터미널 창을 연 다음 Django 프로젝트를 빠르게 생성해 보겠습니다.
mkdir django_flutterwave && cd django_flutterwave
다음으로 새 가상 환경을 만들고 필요한 종속성을 설치하겠습니다.
virtualenv env
source env/bin/activate
pip install django requests django-environ Pillow
따라서 django 외에도 다음이 필요합니다.
1. 요청 라이브러리 - 결제 끝점에 대한 호출
2.django-environ- 환경 변수를 안전하게 저장
3.이미지 처리에 도움이 되는 베개
프로젝트를 생성해 봅시다:
django-admin startproject django_store .
python manage.py startapp electronics
프로젝트의 설치된 앱 목록에 'electronics'를 추가해야 합니다
settings.py
.모델
electronics/models.py
를 열고 다음 코드를 추가합니다.from django.db import models
# Create your models here.
class Product(models.Model):
name=models.CharField(max_length=250)
image=models.ImageField(upload_to='product_images')
price=models.FloatField()
def __str__(self) -> str:
return str(self.name)
#Register it in admin
from django.contrib import admin
admin.site.register(Product)
다음 단계는
makemigrations
및 마지막으로 migrate
명령을 실행하여 데이터베이스 테이블을 등록하는 것입니다.runserver
명령을 사용하여 서버를 가동합니다.createsuperuser
명령을 사용하여 수퍼유저를 만들고 ( http://localhost:8000/admin/ )에 로그인한 다음 몇 가지 전자 제품을 추가합니다.설정 구성
Product 클래스는 이미지를 허용하므로 이를 반영하도록
settings.py
를 업데이트하겠습니다. 파일 맨 아래에 다음 코드를 추가합니다.MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
프로젝트
urls.py
를 열고 다음 코드를 추가합니다.from django.contrib import admin
from django.urls import path
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('admin/', admin.site.urls),
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
django에게 HTML 마크업을 찾을 위치를 알려주려면
DIRS
부분 내부의 TEMPLATES SECTION에 다음을 추가합니다.os.path.join(BASE_DIR, 'templates')
그 자리에서 계속 진행합시다.
견해
모든 비즈니스 로직이 여기에 있습니다. 데이터베이스에서 제품을 나열해야 하므로 이를 처리하는 함수를 만들어 봅시다.
views.py
에 다음 코드를 추가합니다.from django.shortcuts import render
from .models import Product
# Create your views here.
def list_products(request):
products=Product.objects.all()
ctx={
'products':products
}
return render(request, 'products.html', ctx)
다음과 같이 프로젝트
urls.py
를 업데이트합니다.from os import name
from django.contrib import admin
from django.urls import path
from django.conf import settings
from django.conf.urls.static import static
from electronics.views import list_products
urlpatterns = [
path('admin/', admin.site.urls),
path('', list_products, name='list'),
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
템플릿
'템플릿'이라는 루트 수준 폴더를 만들고 그 안에 'products.html' 파일을 만듭니다. 이제 이 파일의 내용은 this paste에서 찾을 수 있습니다.
그런 다음 dev 서버를 다시 시작하고 액세스( http://localhost:8000/ )하면 아래와 같은 UI가 분명히 표시되어야 합니다.
그게 다야
자, 이 시점에서 이 부분을 마무리해야 합니다. 여기서의 목표는 프로젝트를 생성하고 제품을 추가하여 홈페이지에 표시하는 것이었습니다. 나는 그것이 당신이 당신의 끝에 있기를 바랍니다.
시간을 내어 읽고 따라해주셔서 감사합니다. 작업 중이니 계속 지켜봐 주세요!
업데이트를 위해 여기에서 저를 팔로우하세요.
또한 시간이 있으시면 제 웹사이트here를 방문하십시오.
건배!
Reference
이 문제에 관하여(Flutterwave를 사용하여 Django 전자 상거래 포털에서 결제 수금 ~PART 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/nick_langat/collect-payments-in-your-django-ecommerce-portal-using-flutterwave-part-1-14kp텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)