Django의 사랑 계산기
RapidAPI 디렉토리를 스크롤하다가 Ajith의 멋진 API를 찾았습니다.
VS Code 또는 선호하는 텍스트 편집기를 연 다음 터미널을 열고 다음 명령을 사용하여 Django 프로젝트 생성을 위한 가상 환경을 설정합니다.
Venv 및 Django 프로젝트 설정
python -m venv env
cd env/Scripts
./activate
cd ../..
pip install django
pip install requests
django-admin startproject lovecalculator
cd lovecalculator
python manage.py startapp core
python manage.py runserver
프로젝트를 설정하고 앱을 만들었으며 이제 settings.py 파일의 INSTALLED_APPS에 "핵심"앱을 추가했는지 확인합니다.
템플릿 설정
템플릿 폴더 내에 "템플릿"폴더를 만든 다음 "코어"폴더를 만듭니다.
이제 "home.html"을 만들고 부트스트랩을 붙여넣습니다starter template.
"views.py"에서 홈페이지 기능을 만듭니다.
def home(request):
return render(request,'core/home.html')
나중에 여기에 앱의 모든 로직을 추가할 것입니다.
서버를 실행하기 전에 "lovecalculator/urls.py"에 홈페이지용 URL을 생성하십시오.
from core import views
path('',views.home,name='home'),
그리고 마지막으로 서버를 실행합니다.
python manage.py runserver
"Hello, world!"우리 홈페이지의 텍스트.
API 키 가져오기
Love Calculator을 방문하여 API 키를 얻거나 코드 스니펫을 복사할 수 있습니다.
url = "https://love-calculator.p.rapidapi.com/getPercentage"
querystring = {"fname":"John","sname":"Alice"}
headers = {
'x-rapidapi-key': "Your RAPID API KEY",
'x-rapidapi-host': "love-calculator.p.rapidapi.com"}
response = requests.request("GET", url, headers=headers,
params=querystring).json()
print(response)
이 코드를 "홈"기능에 붙여넣으세요.
홈페이지를 다시 누르면 터미널에서 응답을 받을 수 있습니다.
이제 원하는 데이터를 얻었으므로 데이터를 정리하고 템플릿으로 보내면 됩니다.
"views.py"에서 API에서 데이터를 가져오기 위한 별도의 함수를 만들었지만 "home"함수에도 간단히 추가할 수 있습니다.
홈 기능
try:
if request.method=='POST':
f = request.POST.get('fname',False)
s = request.POST.get('sname',False)
res = calculator(f,s)
context ={
'fname':res['fname'],
'sname':res['sname'],
'percent':int(res['percentage']),
'result':res['result'],
}
return render(request,'core/result.html',context {'data':context})
return render(request,'core/home.html')
except:
return render(request,'core/error.html')
def calculator(f,s):
url = "https://love-calculator.p.rapidapi.com/getPercentage"
querystring = {"fname":f"{f}","sname":f"{s}"}
headers = {
'x-rapidapi-key': "Your RAPID API Key",
'x-rapidapi-host': "love-calculator.p.rapidapi.com"}
response = requests.request("GET", url, headers=headers, params=querystring).json()
return response
파이널 터치
디자인을 위해 더 많은 HTML 파일과 정적 파일을 추가했습니다.
이 앱의 Github 저장소는 다음과 같습니다.
크리테브 / django-love-계산기
사랑 계산기
Reference
이 문제에 관하여(Django의 사랑 계산기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kritebh/love-calculator-in-django-2dj텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)