generics.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:radar 作者: renalreg 项目源码 文件源码
def get_object(self):
        query = self.get_query()
        query = self.filter_query(query)

        model_class = self.get_model_class()
        id_type = inspect(model_class).columns['id'].type

        obj_id = request.view_args['id']

        if isinstance(id_type, Integer):
            try:
                obj_id = int(obj_id)
            except ValueError:
                raise NotFound()
        elif isinstance(id_type, postgresql.UUID):
            try:
                # Check the ID is a valid UUID so don't try
                # to query with an invalid UUID.
                uuid.UUID(obj_id)
            except ValueError:
                raise NotFound()

        query = query.filter(model_class.id == obj_id)

        try:
            obj = query.one()
        except NoResultFound:
            raise NotFound()

        self.check_object_permissions(obj)

        return obj
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号