Django restframwork获取列表详情
z哎Django restframwork中就有一个类可以获取列表的详情内容,只有两行代码就可以搞定,在浏览器测试是ok的。但是这样的接口给前端,前端点击详情然后会将models.表名.objects.all()的所有内容重新放在了这个数组中。以至于前端点击详情拿到的并不是单个id对应的内容。所以稍微重写一下就好。看一下代码。本来就是一个数据表,列表页数据少,详情回去的数据多一点而已。
class Upload_filep(models.Model):
"""上传项目模型"""
name = models.CharField(verbose_name='项目名', max_length=32)
title = models.TextField(verbose_name='项目描述')
upload_files = models.FileField(upload_to="upload/")
img = models.ImageField(upload_to="upload/")
address = models.CharField(max_length=64, verbose_name='地址', null=True, blank=True)
add_time = models.DateTimeField(default=datetime.now, verbose_name='创建时间')
router = DefaultRouter()
router.register(r'show_workPubs_detail',Mode_DetailViewSet,base_name="mode_detail")
urlpatterns = [ path('admin/', admin.site.urls), url(r'^',include(router.urls)), ]+ static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
url.py
seiializers.py
class Show_workPublishedModelSerialiazer(serializers.ModelSerializer):
class Meta:
model = Upload_filep
fields = ("id","name","title","img","upload_files","address")
search_fields = ('name','title')
view.py(原Django restframwork中只写queryset和serializer_class就可以获取,但是前端拿到的并不是单个id对应的数据,所以重写get_queryset(self)就好)
class Mode_DetailViewSet(mixins.ListModelMixin, viewsets.GenericViewSet):
# 通过三维城市的id,获取三维城市的详情
queryset = Upload_filep.objects.all()
serializer_class = Show_workPublishedModelSerialiazer def get_queryset(self):
id = self.request.GET.get('id')
if id is not None:
return self.queryset.filter(id=id)
return self.queryset
到此,列表详情的获取就可以完成
Django restframwork获取列表详情的更多相关文章
- Spring Boot 构建电商基础秒杀项目 (九) 商品列表 & 详情
SpringBoot构建电商基础秒杀项目 学习笔记 ItemDOMapper.xml 添加 <select id="listItem" resultMap="Bas ...
- Django框架获取各种form表单数据
Django中获取text,password 名字:<input type="text" name="name"><br><br& ...
- [置顶]
django快速获取项目所有的URL
django快速获取项目所有的URL django1.10快速获取项目所有的URL列表,可以用于权限控制 函数如下: import re def get_url(urllist , parent='' ...
- WPF 微信 MVVM 【续】修复部分用户无法获取列表
看过我WPF 微信 MVVM这篇文章的朋友,应该知道我里面提到了我有一个小号是无法获取列表的,始终也没找到原因. 前两天经过GitHub上h4dex大神的指导,知道了原因,是因为微信在登录以后,web ...
- SharePoint 快捷获取列表栏内部名称
在列表设置页面点击浏览器书签获取列表字段内部名称,使用效果如下图: 如何使用: 修改浏览器上任意书签的url地址为以下代码,注意:代码中不能有换行符 javascript:(function(){va ...
- MSCRM 获取列表所选记录相关信息
问题:如何通过JS获取列表中所选记录信息? 解决办法: The CRM2011 Ribbon has a special set of parameters called 'CrmParameters ...
- SharePoint 2010 获取列表中所有数据(包括文件夹内)的方法
转: http://blog.csdn.net/wangwenism/article/details/8751411 SharePoint的列表能存储文件以及文件夹,用户使用的时候,经常会建几个分类文 ...
- 获取列表的索引操作:enumerate
通过循环获取列表的索引操作: 主要使用:enumerate product_list = [['Iphone7',5800], ['Coffee',30], ['疙瘩汤',10], ['Python ...
- 获取列表中的最大的N项和最小的N项
获取列表中的最大的N项和最小的N项 #!/sur/bin/env python # -*- coding:utf-8 -*- # author:zengsf #time:2018/10/31 impo ...
随机推荐
- centos7 安装zookeeper 集群
data 创建myid 设置1 zookeeper默认端口2181 同步端口 20881 和 30881 设置zoo.cfg文件
- [Scikit-learn] *Dynamic Bayesian Network - Partical Filter
涉及的一些知识: 机器人的自我定位 Sequential Importance Sampling Ref: http://scipy-cookbook.readthedocs.io/items/Par ...
- Excel时间格式修改为文本格式
- Python 入门(七)函数
什么是函数 我们知道圆的面积计算公式为: S = πr² 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = ...
- Linux之MySQL
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- 内存监测工具 DDMS --> Heap
无论怎么小心,想完全避免bad code是不可能的,此时就需要一些工具来帮助我们检查代码中是否存在会造成内存泄漏的地方.Android tools中的DDMS就带有一个很不错的内存监测工具Heap(这 ...
- Thinkphp 图形验证码无法显示
不显示验证码的代码: public function verify(){ $verify = new \Think\Verify(); $verify->entry(); } 修改为: publ ...
- 用ajax实现用户名的检测(JavaScript方法)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- saltstack之syndic的配置
author: headsen chen date: 2018-08-04 22:22:09 1,架构 2,配置 2.1,配置master: yum -y install epel-relea ...
- JQuery操作Select标签
jQuery获取Select选择的Text和Value: 1. $("#select_id").change(function(){//code...}); //为Select添加 ...