[英]how to give the client argument in django management commands?
我在 django 管理命令中有一個 function 應該以 url 作為參數
class Command(BaseCommand):
help = u'Enter the url'
def add_arguments(self, parser):
parser.add_argument('url',type=str,help=u'Enter the url')
def handle(self,*args,**kwargs):
url = kwargs['url']
main(url)
function 是什么並不重要,當通過終端調用命令時,其中的所有內容都有效
但我有一個問題,如何將其實現到客戶端部分? 我希望用戶輸入 url 並將其傳遞給 function。
用戶arguments到django管理命令的傳遞方式有哪些?
結果證明解決方案非常簡單
您只需創建一個與 model 無關的表單,在 function 中創建您需要的字段作為參數,然后將表單中的數據傳遞給您的命令
def index(request):
if request.method == 'POST':
form = AddFilmUrl(request.POST)
if form.is_valid():
url = form.cleaned_data.get('url')
management.call_command('parse',url)
else:
form = AddFilmUrl()
return render(request, 'addfilm.html', {'form':form,})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.