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를 방문하십시오.
건배!

좋은 웹페이지 즐겨찾기