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 ...
随机推荐
- Redis生成Id主键的工具
public class PrimaryKeyGenerator { private static readonly NedisClient client = new NedisClient(GetR ...
- oracle函数学习_根据用户id获取用户角色
create or replace function FN_GET_ROLES(v_user_id varchar2) return varchar2 istype zy_emp_cursor is ...
- 服务端用例设计的思(tao)路!
服务端的测试简单来说就是除了前端以外的的测试. 总的来说可以分为以下两类: 1. WEB或者APP的提供业务逻辑的服务端接口测试 2. 数据库.缓存系统.中间件..jar包依赖.输入输 ...
- UE4修改自Rama的UDP通信蓝图插件
UE4.15没有提供蓝图UDP的组件,可以在网上找到一个ID叫Rama写的源代码,我把它封装成插件了(MyUdpPlugin),方便在各个UE4版本工程中使用UDP通信. 使用方式: 1.在自己的工程 ...
- mySQL数据库二:命令行的使用
在做整理的时候,上一篇刚开始只是简单的做了个数据类型的开头,在这里简单说一下mySQL的使用以及它的命令行 1.准备工作 有一个好的开发工具可以几何倍数的增加我们的工作效率,所以,工具是必不可少的,首 ...
- ReactiveCocoa - iOS开发的新框架
本文转载至 http://www.infoq.com/cn/articles/reactivecocoa-ios-new-develop-framework ReactiveCocoa(其简称为RAC ...
- mysql concat
CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式. 第一个参数是其它参数的分隔符.分隔符的位置放在要连接的两个字符串之间. 分隔符可以是一个字符 ...
- axios请求本地json
在vux的项目中 1,首先,json文件的位置: 原因: 访问服务器文件,应该把 json文件放在最外层的static文件夹,这个文件夹是vue-cli内置服务器向外暴露的静态文件夹 2,一定要用 ...
- ios ASIHTTPRequest类库简介和使用说明
官方网站: http://allseeing-i.com/ASIHTTPRequest/ .可以从上面下载到最新源码,以及获取到相关的资料. 使用iOS SDK中的HTTP网络请求API,相当的复杂, ...
- mysql表大小写问题
查看大小写区分 mysql> show variables like "%case%"; linux在mysql安装完后默认:区分表名的大小写,不区分列名的大小写 改变表名的 ...