Django argparse:无法识别的参数——设置?
Django argparse: Unrecognized Arguments --settings?
我查看了其他关于无法识别的 argparse 参数的 SO 线程,但其中 none 似乎与我的情况相符。
这是我的 argparse 代码,位于 apps/create_pdf/management/commands/create_pdf.py
:
from django.core.management.base import BaseCommand, CommandError
class Command(BaseCommand):
help = 'html to pdf for specified website.'
def add_arguments(self, parser):
print('cp#1')
parser = argparse.ArgumentParser(description='html to pdf for specified website')
parser.add_argument('-w', '--website', nargs =1, action = 'store', choices = ['SITE_1', 'SITE_2'], default='', help='site to be scraped.')
args = parser.parse_args()
print(args)
breakpoint()
def handle(self, *args, **options):
print('cp#2')
# create_pdf_from_html()
我从终端运行这样:
python3 manage.py create_pdf --website=SITE_1 --settings=server_config.settings
...我收到此错误:
manage.py: error: unrecognized arguments: create_pdf --settings=server_config.settings
设置路径正确,如果我不使用 argparse,一切都 运行 没问题。
我错过了什么?
向命令添加参数的正确方法:
from django.core.management.base import BaseCommand, CommandError
class Command(BaseCommand):
help = 'html to pdf for specified website.'
def add_arguments(self, parser):
parser.add_argument('-w', '--website', nargs =1, action = 'store', choices = ['SITE_1', 'SITE_2'], default='', help='site to be scraped.')
def handle(self, *args, **options):
print(options['website'])
# create_pdf_from_html()
我查看了其他关于无法识别的 argparse 参数的 SO 线程,但其中 none 似乎与我的情况相符。
这是我的 argparse 代码,位于 apps/create_pdf/management/commands/create_pdf.py
:
from django.core.management.base import BaseCommand, CommandError
class Command(BaseCommand):
help = 'html to pdf for specified website.'
def add_arguments(self, parser):
print('cp#1')
parser = argparse.ArgumentParser(description='html to pdf for specified website')
parser.add_argument('-w', '--website', nargs =1, action = 'store', choices = ['SITE_1', 'SITE_2'], default='', help='site to be scraped.')
args = parser.parse_args()
print(args)
breakpoint()
def handle(self, *args, **options):
print('cp#2')
# create_pdf_from_html()
我从终端运行这样:
python3 manage.py create_pdf --website=SITE_1 --settings=server_config.settings
...我收到此错误:
manage.py: error: unrecognized arguments: create_pdf --settings=server_config.settings
设置路径正确,如果我不使用 argparse,一切都 运行 没问题。
我错过了什么?
向命令添加参数的正确方法:
from django.core.management.base import BaseCommand, CommandError
class Command(BaseCommand):
help = 'html to pdf for specified website.'
def add_arguments(self, parser):
parser.add_argument('-w', '--website', nargs =1, action = 'store', choices = ['SITE_1', 'SITE_2'], default='', help='site to be scraped.')
def handle(self, *args, **options):
print(options['website'])
# create_pdf_from_html()