热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用FlaskRestful实现反向查询功能

classUser(db.Model):iddb.Column(db.Integer,primary_keyTrue,autoincrementTrue)#自增主键username

class User(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True) # 自增主键
username = db.Column(db.String(32)) # 用户名
nickname = db.Column(db.String(20)) # 昵称
password = db.Column(db.String(32)) # 密码
email = db.Column(db.String(32),nullable=True) # 邮箱
phOne= db.Column(db.String(32)) # 手机号
fans_num = db.Column(db.Integer) # 粉丝数量
sign_num = db.Column(db.Integer) # 签到数量
follow_num = db.Column(db.Integer) # 关注的人的数量
album_id = db.Column(db.Integer, db.ForeignKey('photo_one.id')) # 相册
card_id = db.Column(db.Integer, db.ForeignKey('card.id')) # 优惠劵
Avatar = db.Column(db.String(50)) # 头像
address = db.Column(db.Integer, db.ForeignKey('address.id')) # 地址
pinlun = db.relationship('Pinlun', backref=db.backref('user'))
wheel = db.relationship('Wheel', backref=db.backref('user'))

# # 商品评论表
class Pinlun(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True) # 自增id
user_id = db.Column(db.Integer, db.ForeignKey('user.id')) # 用户id外键
goods_comment_Id = db.Column(db.Integer, db.ForeignKey('goods.id')) # 评论id外键
goodsScore = db.Column(db.Integer) # 商品评分
cOntent= db.Column(db.String(256)) # 点评内容
shopReply = db.Column(db.String(128)) # 店家回复
images = db.Column(db.String(128)) # 上传图片
replytime = db.Column(db.DateTime, default=datetime.datetime.now()) # 商家回复时间
createtime = db.Column(db.DateTime, default=datetime.datetime.now()) # 创建时间

#api.py
#商品评论
pinlun_info= {
'id': fields.Integer(attribute='id'),#自增id
'user_id': fields.Integer(attribute='user_id'),#用户id
'goods_comment_Id': fields.Integer(attribute='goods_comment_Id'),#对某个商品评论的id
'goodsScore': fields.Integer(attribute='goodsScore'),#评分
'content': fields.String(attribute=' content'),#评价内容
'shopReply': fields.String(attribute='shopReply'),#商家回复
'img': fields.String(attribute='images'),#图片
'user': fields.Nested(user_all),#用户
'replytime': fields.DateTime(dt_format='rfc822'),#回复日期
'createtime': fields.DateTime(dt_format='rfc822'),#创建日期
}
user_all = {
'usersName': fields.String(attribute='usersName'),#用户名
'Avatar': fields.String(attribute='Avatar'),#头像
# class Goodscomment(Resource):
# def get(self):
# goods=Pinlun.query.all()#获取所有评论
# #创建返回集合
# returnValue = {
#
# }
# #商品列表
# goods_list = {
#
# }
# # .order_by(Goodsfenlei.id.desc())
# for good in goods:
#
# # 动态添加商品id
# goods_list[good.id] = fields.List(fields.Nested(pinlun_info))
#
# # 将商品信息与商品进行绑定
# returnValue[good.id] = goods
#
# # 匹配外层信息
# good_info = {
# 'returnCode': fields.Integer,
# 'returnValue': fields.Nested(goods_list)
# }
#
# # 第一个参数 就是你的Json字符串 第二个参数 就是你要根据哪个模块去序列化你的Json
# return marshal({'returnCode': 200, 'returnValue':returnValue}, good_info)

 


推荐阅读
  • 深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案
    深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案 ... [详细]
  • 在C#编程中,数值结果的格式化展示是提高代码可读性和用户体验的重要手段。本文探讨了多种格式化方法和技巧,如使用格式说明符、自定义格式字符串等,以实现对数值结果的精确控制。通过实例演示,展示了如何灵活运用这些技术来满足不同的展示需求。 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 属性类 `Properties` 是 `Hashtable` 类的子类,用于存储键值对形式的数据。该类在 Java 中广泛应用于配置文件的读取与写入,支持字符串类型的键和值。通过 `Properties` 类,开发者可以方便地进行配置信息的管理,确保应用程序的灵活性和可维护性。此外,`Properties` 类还提供了加载和保存属性文件的方法,使其在实际开发中具有较高的实用价值。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 本文探讨了如何优化时间格式查询,特别是针对 `yyyyMM` 和 `yyyyMMdd` 类型的时间格式,提出了有效的方法来检索上一个月的数据。通过使用 `SimpleDateFormat` 和 `Calendar` 类,我们实现了一个高效的函数,该函数接收一个字符串参数(如 `yyyy-MM`),并返回上一个月的对应日期。此方法不仅提高了查询效率,还增强了代码的可读性和可维护性。 ... [详细]
  • 在MySQL中实现时间比较功能的详细解析与应用
    在MySQL中实现时间比较功能的详细解析与应用。本文深入探讨了MySQL中时间比较的实现方法,重点介绍了`UNIX_TIMESTAMP`函数的应用。该函数可以接收一个日期时间参数,也可以不带参数使用,其返回值为Unix时间戳,便于进行时间的精确比较和计算。此外,文章还涵盖了其他相关的时间处理函数和技巧,帮助读者更好地理解和掌握MySQL中的时间操作。 ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • 在分析Android的Audio系统时,我们对mpAudioPolicy->get_input进行了详细探讨,发现其背后涉及的机制相当复杂。本文将详细介绍这一过程及其背后的实现细节。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • 本文介绍如何使用 Python 的 DOM 和 SAX 方法解析 XML 文件,并通过示例展示了如何动态创建数据库表和处理大量数据的实时插入。 ... [详细]
  • 在C#中开发MP3播放器时,我正在考虑如何高效存储元数据以便快速检索。选择合适的数据结构,如字典或数组,对于优化性能至关重要。字典能够提供快速的键值对查找,而数组则在连续存储和遍历方面表现优异。根据具体需求,合理选择数据结构将显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文深入探讨了 hCalendar 微格式在事件与时间、地点相关活动标记中的应用。作为微格式系列文章的第四篇,前文已分别介绍了 rel 属性用于定义链接关系、XFN 微格式增强链接的人际关系描述以及 hCard 微格式对个人和组织信息的描述。本次将重点解析 hCalendar 如何通过结构化数据标记,提高事件信息的可读性和互操作性。 ... [详细]
  • 如何利用正则表达式(regexp)实现高效的模式匹配?本文探讨了正则表达式在编程中的应用,并分析了一个示例程序中存在的问题。通过具体的代码示例,指出该程序在定义和使用正则表达式时的不当之处,旨在帮助读者更好地理解和应用正则表达式技术。 ... [详细]
  • 利用 Spring BeanUtils 实现 JavaBean 的深度克隆与属性复制 ... [详细]
author-avatar
芦子根_889
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有