执行定制管理命令返回无

时间:2019-02-19 13:29:05

标签: python django

我正在尝试创建自定义管理命令,该命令将执行来自Api的数据。我写了这段代码:

from django.core.management.base import BaseCommand, CommandError
from data.models import Country
import requests 
import json

def extracting():
    country_req = requests.get("https://api-football-v1.p.rapidapi.com/countries", headers = {"X-RapidAPI-Key": "my_token"})
    parsed_string =  json.loads(country_req.text)


class Command(BaseCommand):
    def handle(self, **options):
        print(extracting())

但是,当我尝试在控制台中使用python manage.py extract执行它时,我看到“无”,而当我尝试在没有自定义管理命令的控制台中运行此代码时,我看到了我尝试执行的数据。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您不会从extracting()方法返回任何内容。根据您的交互式控制台,您可能会看到变量的值。但是您可能想做的是:

def extracting():
    country_req = requests.get("https://api-football-v1.p.rapidapi.com/countries", headers = {"X-RapidAPI-Key": "my_token"})
    return json.loads(country_req.text)