如何防止用户在24小时后更新django

art_cs

我想防止用户在发布日期起24小时后更新该帖子

class Post(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE) 
    title= models.CharField(max_length=50)
    post = models.TextField(max_length=400)
    date = models.DateTimeField(auto_now_add=True)
    edit = models.DateTimeField(auto_now=True)

class PostForm(forms.ModelForm):
    class Meta:
       model = Post
       fields = '__all__'

class PostUpdateView(LoginRequiredMixin,SuccessMessageMixin,UpdateView):
    model = Post
    form_class = PostForm
    success_message = "updated successfully"
    template_name = 'store/create.html'
    success_url = reverse_lazy('lists')
    def form_valid(self,form):
        return super().form_valid(form)

我想让用户只能在发布日期的24小时之前更新帖子,谢谢

威廉·范昂塞姆

您可以过滤查询集,以便仅查询集仅包含Post最近24小时内撰写的:

from datetime import timedelta
from django.utils.timezone import now

class PostUpdateView(LoginRequiredMixin,SuccessMessageMixin,UpdateView):
    model = Post
    form_class = PostForm
    success_message = "updated successfully"
    template_name = 'store/create.html'
    success_url = reverse_lazy('lists')

    def get_queryset(self, *args, **kwargs):
        return super().get_queryset(*args, **kwargs).filter(
            date__gte=now() - timedelta(days=1)
        )

    def form_valid(self,form):
        return super().form_valid(form)

如果更新时间已“过期”,这将返回HTTP 404响应。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使的Javascript倒计时24小时,24小时后淡出div元素?

来自分类Dev

24小时后如何清除离子本地存储数据?

来自分类Dev

24小时后自动更新MySQL表上的字段值

来自分类Dev

如何允许用户每天不连续24小时投票一次?

来自分类Dev

如何检查用户是否在24小时滑轨之前进行了投票4

来自分类Dev

如何使UIDatePicker成为24小时系统

来自分类Dev

如果记录状态在24小时后未更改,是否需要向用户组发送SMS和EMail?

来自分类Dev

如何更改relatime访问时间的更新间隔(从24小时开始)?

来自分类Dev

如何更改relatime访问时间的更新间隔(从24小时开始)?

来自分类Dev

24小时后,Firebase停止工作,但是如果我更新Pod,它将重新开始工作

来自分类Dev

最近状态24小时后,创建新状态

来自分类Dev

24小时后CDN端点不工作

来自分类Dev

从用户那里获取12小时制的时间并转换为24小时制

来自分类Dev

来自Mongo Collection的条目比24小时更新

来自分类Dev

如何使用户权限在 24 小时后过期?

来自分类Dev

24小时后如何使用MSAL.js刷新azure b2c中的访问令牌?

来自分类Dev

更新播放商店时如何防止向用户发送应用更新通知?

来自分类Dev

日期存储<=最近24小时的Django返回计数

来自分类Dev

创建用户后如何防止自动登录

来自分类Dev

如何在Android中创建24小时SeekBar或ProgressBar

来自分类Dev

如何从当前时间戳获取最近24小时?

来自分类Dev

如何记录24小时内的文件访问情况?

来自分类Dev

MySQL-如何每24小时减少int值?

来自分类Dev

如何在PostgreSQL中获取最近24小时的数据

来自分类Dev

如何使用Postgres选择24小时的旧记录?

来自分类Dev

如何找到24小时格式时间列表的平均时间?

来自分类Dev

您如何使UIDatePicker成为24小时系统

来自分类Dev

MySQL-如何每24小时减少int值?

来自分类Dev

如何在php 24小时格式中扣除时间

Related 相关文章

  1. 1

    如何使的Javascript倒计时24小时,24小时后淡出div元素?

  2. 2

    24小时后如何清除离子本地存储数据?

  3. 3

    24小时后自动更新MySQL表上的字段值

  4. 4

    如何允许用户每天不连续24小时投票一次?

  5. 5

    如何检查用户是否在24小时滑轨之前进行了投票4

  6. 6

    如何使UIDatePicker成为24小时系统

  7. 7

    如果记录状态在24小时后未更改,是否需要向用户组发送SMS和EMail?

  8. 8

    如何更改relatime访问时间的更新间隔(从24小时开始)?

  9. 9

    如何更改relatime访问时间的更新间隔(从24小时开始)?

  10. 10

    24小时后,Firebase停止工作,但是如果我更新Pod,它将重新开始工作

  11. 11

    最近状态24小时后,创建新状态

  12. 12

    24小时后CDN端点不工作

  13. 13

    从用户那里获取12小时制的时间并转换为24小时制

  14. 14

    来自Mongo Collection的条目比24小时更新

  15. 15

    如何使用户权限在 24 小时后过期?

  16. 16

    24小时后如何使用MSAL.js刷新azure b2c中的访问令牌?

  17. 17

    更新播放商店时如何防止向用户发送应用更新通知?

  18. 18

    日期存储<=最近24小时的Django返回计数

  19. 19

    创建用户后如何防止自动登录

  20. 20

    如何在Android中创建24小时SeekBar或ProgressBar

  21. 21

    如何从当前时间戳获取最近24小时?

  22. 22

    如何记录24小时内的文件访问情况?

  23. 23

    MySQL-如何每24小时减少int值?

  24. 24

    如何在PostgreSQL中获取最近24小时的数据

  25. 25

    如何使用Postgres选择24小时的旧记录?

  26. 26

    如何找到24小时格式时间列表的平均时间?

  27. 27

    您如何使UIDatePicker成为24小时系统

  28. 28

    MySQL-如何每24小时减少int值?

  29. 29

    如何在php 24小时格式中扣除时间

热门标签

归档