如何从Django表单获取日期值并将其存储在views.py的变量中

2024-04-28 04:25:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在创建TweetScraster网站,我想让用户在特定日期获取tweet,所以我希望用户通过datepicker选择日期。。。我已经创建了datepicker,但我不知道如何将该日期值传递到views.py forms.py

from django import forms



class DateForm(forms.Form):
    date2 = forms.DateTimeField(input_formats=['%d/%m/%Y %H:%M'])

class Date1Form(forms.Form):
    date3 = forms.DateTimeField(input_formats=['%d/%m/%Y %H:%M'])

check.html

<div class="container">
<form class="input-group" method="post" enctype="multipart/form-data">
  {% csrf_token %}
  {{form|crispy}}
  {{forms|crispy}}
  <button class="btn btn-success">Get Date</button>
</form>
</div>
<!--<input id="datetimepicker" type="text">-->




<script>
$(function () {
  $("#id_date2").datetimepicker({
    format: 'd/M/Y H:i',
  });
});
<script>
$(function () {
  $("#id_date3").datetimepicker({
    format: 'd/M/Y H:i',
  });
});

views.py

class Check(View):
def get(self,request):
    form = DateForm
    forms = Date1Form
    args = {"form": form, "forms": forms}
    return render(request, 'tweetScrapper/check.html', args)

def post(self,request):
    if request.method == 'POST':
        form = DateForm(request.POST or None)
        if form.is_valid():
            data = form.cleaned_data["date2"]
            print("date",data)
    return render(request,'tweetScrapper/check.html')

Tags: 用户pyformidinputdatarequesthtml
1条回答
网友
1楼 · 发布于 2024-04-28 04:25:03

谢谢,哥们,它起作用了

class TweetScrapper(View):

    def get(self, request):
        form = DateForm()
        args = {"form": form}
        form = DateForm()
        return render(request, 'tweetScrapper/tweetscrapper.html', args)

    def post(self, request):
        if request.method == 'POST':
            form = DateForm(request.POST or None)

            formDict = form.data

            if 'date2' in request.POST and 'date3' in request.POST:
                date1 = formDict['date2']
                date1Con = datetime.datetime.strptime(date1, '%d/%b/%Y %H:%M')
                dateFormat = date1Con.strftime('%d-%m-%Y %H:%M')
                s_date = datetime.datetime.strptime(dateFormat, "%d-%m-%Y %H:%M")

                date2 = formDict['date3']
                date2Con = datetime.datetime.strptime(date2, '%d/%b/%Y %H:%M')
                date2Format = date2Con.strftime('%d-%m-%Y %H:%M')
                e_date = datetime.datetime.strptime(date2Format, "%d-%m-%Y %H:%M")

                print(s_date, e_date)

            args = {"form": form}

            return render(request, 'tweetScrapper/tweetscrapper.html', args)

相关问题 更多 >