当前位置: 首页 > news >正文

限制ip段访问我的网站域名购买

限制ip段访问我的网站,域名购买,设计网名带有自己名字,连锁店网站建设Flask使用的正例和反例 文章目录 Flask使用的正例和反例一 , 使用注册异常二 , 新增数据成功后要返回新增数据的id三, 模型查询语句抽取成函数四, 业务逻辑函数传递的参数不应该用字典类型,要传不同字段的参数&#xf…

Flask使用的正例和反例

文章目录

    • Flask使用的正例和反例
      • 一 , 使用注册异常
      • 二 , 新增数据成功后要返回新增数据的id
      • 三, 模型查询语句抽取成函数
      • 四, 业务逻辑函数传递的参数不应该用字典类型,要传不同字段的参数,做拆分

一 , 使用注册异常

优点:一般web框架都有异常注册的功能,功能异常注册异常可以很好的将业务逻辑和框架结合起来

反例:

def search_model(params):"""查询模型"""search_key = params.get('search_key')page = params.get('page', 1)size = params.get('size', 10)if not all([search_key, page, size]):return "缺少参数"    #错误点

正例:

def search_model(params):"""查询模型"""search_key = params.get('search_key')page = params.get('page', 1)size = params.get('size', 10)if not all([search_key, page, size]):raise TipResponse("缺少参数")  #使用框架中异常注册的功能

二 , 新增数据成功后要返回新增数据的id

优点: 可以直观的通过返回的数据id,确认数据是否新增成功

反例:

def insert_dataset(params):"添加训练集"vertexes = params.get('vertexes')dataset_name = params.get('dataset_name')start_time = params.get('start_time')end_time = params.get('end_time')grid_size = params.get('grid_size')dataset = DatasetModel(vertexes=str(vertexes),dataset_name=dataset_name,grid_size=int(grid_size),area_type=area_type,target_num=target_num,point_num=len(target_points),start_time=datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S"),end_time=datetime.strptime(end_time, "%Y-%m-%d %H:%M:%S"),data_path='')session.add(dataset)session_commit()   #新增数据完成后没有返回值

正例:

def insert_dataset(params):"添加训练集"vertexes = params.get('vertexes')dataset_name = params.get('dataset_name')start_time = params.get('start_time')end_time = params.get('end_time')grid_size = params.get('grid_size')dataset = DatasetModel(vertexes=str(vertexes),dataset_name=dataset_name,grid_size=int(grid_size),area_type=area_type,target_num=target_num,point_num=len(target_points),start_time=datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S"),end_time=datetime.strptime(end_time, "%Y-%m-%d %H:%M:%S"),data_path='')session.add(dataset)session_commit()return dataset.dataset_id   #增加新增结果成功后返回值

三, 模型查询语句抽取成函数

优点: 方便各个模块之间的复用,或者更换数据库

反例:

def get_target_points(params):"""获取所有的目标的踪迹点"""target_id = params.get('target_id')target = TargetModel.query.get(target_id)  #模型查询语句if not target:raise TipResponse('数据不存在')points = PointModel.query.filter(PointModel.target_id == target_id).all()  #模型查询语句points_result = []for point in points:points_result.append([float(point.longitude), float(point.latitude)])return points_result

正例:

class TargetModel(BaseModel):@staticmethoddef get_by_id(_id: int):return TargetModel.query.filter_by(id=_id).first()  #模型查询类,包含这个模型的不同功能查询语句
class PointModel(BaseModel):@staticmethoddef get_by_target_id(_id: int):return PointModel.query.filter_by(PointModel.target_id=_id).all()  #模型查询类,包含这个模型的不同功能查询语句
def get_target_points(params):"""获取所有的目标的踪迹点"""target_id = params.get('target_id')target = TargetModel.get_by_id(target_id) #模型查询语句if not target:raise TipResponse('数据不存在')points = PointModel.get_by_target_id(target_id) #模型查询语句points_result = []for point in points:points_result.append([float(point.longitude), float(point.latitude)])return points_result

四, 业务逻辑函数传递的参数不应该用字典类型,要传不同字段的参数,做拆分

优点: 方便查看参数的类型,传递的参数的个数

反例:

class DocListHandler(BaseHandler):'''文档列表相关操作'''def delete(self):params = self.paramsdelete_docs(params)   #传递的是字典,看不出里面有多少参数,参数的类型return Response()
def delete_docs(params):"删除文档"doc_ids = params.get('doc_ids')

正例:

class DocListHandler(BaseHandler):'''文档列表相关操作'''def delete(self):params = self.paramsdoc_ids = params.get('doc_ids')delete_docs(doc_ids) #传递参数return Response()
def delete_docs(doc_ids):pass
http://www.ds6.com.cn/news/96518.html

相关文章:

  • win10虚拟机做网站成都短视频代运营
  • python做网站缺点网络营销成功案例
  • 合肥市城乡建设厅网站广州网络seo优化
  • 如何做网站静态页面百度快照优化公司
  • 博罗网站建设公司关键词搜索挖掘爱网站
  • 网站开发实现顺序提高工作效率的重要性
  • wordpress 指定首页郑州网站优化外包顾问
  • 广州做网站公司排名百度指数功能模块有哪些
  • 网站服务器 维护建什么网站可以长期盈利
  • 教你如何做网站bt磁力搜索器
  • mobi网站怎么注册seo诊断a5
  • wordpress 媒体目录千度seo
  • 品牌推广策划公司宁波seo教程app推广
  • 东莞做商城网站建设哪家好郑州网站制作
  • 寻花问柳专注做男人喜爱的网站写软文是什么意思
  • 建筑行业公司常州seo建站
  • 可以做一键拨号和导航的网站百度客户端下载
  • 做网站要学会什么日照网络推广
  • 重庆门户网站网络广告营销案例有哪些
  • 独立网站怎么做seo怎么免费搭建自己的网站
  • asp.net做简易网站太原百度搜索排名优化
  • 沈阳医疗网站制作网络推广软文
  • 视频制作表情包武汉seo收费
  • 网站模板交易品牌营销经典案例
  • 正规网站建设官网优化大师官方免费
  • 佛山做网站的哪个好自己怎么开电商平台
  • 外包网站设计公司海外网站cdn加速
  • 四站合一网站建设痘痘如何去除效果好
  • a站全名叫什么seo文章外包
  • 西安建设信息网官网宁波seo关键词