【发布时间】:2020-11-11 07:25:20
【问题描述】:
我有一个连接到 Django REST Framework API 的博客应用程序。我能够使用 API 调用创建、删除和更新帖子,但我在更新时间创建字段时遇到了困难。我想要做的是在编辑帖子时用当前时间更新时间。因此,如果帖子是在 2020 年 7 月 21 日晚上 10 点创建的,然后在 2020 年 7 月 21 日晚上 10:05 进行编辑,我希望根据编辑时间更改时间。关于我如何做到这一点的任何想法。我正在使用这个 fetch 调用来进行更新。
var url = "http://127.0.0.1:8000/api/blogs/";
var type = "POST";
if (active != null) {
url = `http://127.0.0.1:8000/api/blogs/${active.id}/`;
type = "PUT";
}
fetch(url, {
method: type,
headers: {
"Content-type": "application/json",
"X-CSRFToken": csrftoken,
},
body: JSON.stringify({
'title': form.title.value,
'body': form.body.value,
'user': user,
})
}).then(function (response) {
handlePosts()
location.reload()
form.reset()
})
})
我尝试在正文中发送 new Date() ,但它似乎不起作用。 如果我在 cmets 中添加下面的保存方法,这是我的 models.py:
class BlogModel(models.Model):
user = models.ForeignKey(
UserModel, on_delete=models.SET_NULL, null=True, blank=True)
title = models.CharField(max_length=200, null=True, blank=True)
body = models.CharField(max_length=1000, null=True, blank=True)
created = models.DateTimeField(auto_now_add=True, null=True, blank=True)
def __str__(self):
return str(self.user) + ", " + str(self.title)
def save(self, *args, **kwargs):
self.created = timezone.now()
return super().save(*args, **kwargs)
我最初的想法是我需要覆盖视图集的保存方法,但仍在处理它... 任何帮助表示赞赏:D
【问题讨论】:
标签: javascript django django-rest-framework