「Django」浏览+1的操作
2024-08-27 07:48:46
适应于网页、文章等浏览次数统计
1、Models设置:添加viewed方法
class NewsTitle(models.Model):
title = models.CharField(max_length=64,verbose_name='新闻标题')
count = models.PositiveIntegerField(verbose_name='点击次数',default=0)
src = models.ImageField(upload_to='www/',verbose_name='新闻图片')
is_del = models.BooleanField(verbose_name='删除', default=False)
time = models.DateTimeField(auto_now=True) class Meta:
verbose_name = '新闻标题'
verbose_name_plural = verbose_name def __str__(self):
return self.title def viewed(self):
self.count += 1
self.save(update_fields=['count'])
2、views设置:查询成功后调用viewed方法
def retrieve(self,request,*args,**kwargs):
ret = {'code': 1000, 'data': None}
pk = kwargs.get('pk')
try:
obj = models.NewsTitle.objects.filter(id=pk,is_del=False)
obj.first().viewed()
ser = sel.GetNewsInfoSerializers(instance=obj, many=True)
ret['data'] = ser.data
except Exception as e:
ret['code'] = 1002
ret['err'] = e
return Response(ret)
最新文章
- [原创]下拉框控件react-native-modal-dropdown更新历程
- 喜大普奔,微软Microsoft JDBC Driver For SQL Server已发布到maven中央仓库
- Java多线程19:定时器Timer
- KnockoutJS 3.X API 第四章 表单绑定(10) textInput、hasFocus、checked绑定
- js之滚动置顶效果
- Cocos2d-x 3.2 学习笔记(一)环境搭建
- iOS开发——UI进阶篇(八)pickerView简单使用,通过storyboard加载控制器,注册界面,通过xib创建控制器,控制器的view创建,导航控制器的基本使用
- iOS 关于UIWindow的理解
- 如何下载google play免费应用的apk文件
- php smarty insert用法
- Code Forces Gym 100971D Laying Cables(单调栈)
- webservice 发布到外网的时候
- iPhone中如何判断当前相机是否可用
- PHP - 自定义函数
- php.ini 文件中配置的意义注释
- request的getServletPath(),getContextPath(),getRequestURI(),getRealPath(";/";)区别
- 比较集合List<;T>;集合,前后多了哪些数据,少了哪些数据Except
- 洛谷P3480 KAM-Pebbles
- 最新版 IntelliJ IDEA2018.3.x 破解教程
- 解决Oracle死锁问题步骤