【问题标题】:django api call from view change time data from getdjango api调用从视图更改时间数据从get
【发布时间】:2018-07-12 18:48:26
【问题描述】:

我有一个视图,当它调用 api 时,它将保存从中获取的结果。

但我希望能够将时间从 Post 方法更改为 +30 分钟或 +1 小时并保存。

就我而言,有starttimeendtime。但是只返回了一个字段time。所以我会将time 保存到starttimetime+30min/1hr 保存到endtime

我该怎么做?

观看次数

@csrf_exempt
def my_django_view(request):

    if request.method == 'POST':
        r = requests.post('http://127.0.0.1:8000/api/makeapp/', data=request.POST)
    else:
        r = requests.get('http://127.0.0.1:8000/api/makeapp/', data=request.GET)

    if r.status_code == 201 and request.method == 'POST':
        data = r.json()
        print(data)

        # Create a schedule/Save to schedule table

        user = data['patientId']
        userId = MyUser.objects.get(userId=user)
        # time
        gettime = data['time']
        gettime_add = ???

        saveget_attrs2 = {
            "userId ": userId ,
            "starttime": data["time"],
            "date": data["date"],
        }
        saving2 = Schedule.objects.create(**saveget_attrs2)

【问题讨论】:

    标签: django django-rest-framework


    【解决方案1】:

    首先将日期字符串转换为datetime 对象,然后使用timedelta

    import datetime
    ...
    gettime = data['time']
    date_obj = datetime.datetime.strptime(gettime, <format_string>)
    # for example datetime.datetime.strptime('2017-12-01, '%Y-%m-%d')
    end_time = date_obj + datetime.timedelta(minutes=30)
    

    【讨论】:

    • 谢谢。评论帮助我理解它
    猜你喜欢
    • 2018-07-03
    • 1970-01-01
    • 2012-07-24
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多