我有一个视图,当它调用api时,它将保存结果。
但我希望能够将从Post方法获得的时间更改为+ 30分钟或+ 1小时并保存。
就我而言,有一个starttime
和endtime
。但是只有一个字段time
被回馈。所以我会将time
保存到starttime
和time
+ 30分钟/ 1小时保存到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)
答案 0 :(得分:3)
首先将日期字符串转换为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)