我有一个烧瓶项目,它在模块中Schema
定义了棉花糖类。schemas
例如:
project
- app.py
- routes.py
- schemas/
- schema1.py
- schema2.py
哪里schema1.py
是典型的棉花糖Schema
。
class FooSchema(Schema):
name = fields.Str()
flasgger文档显示可以在路由的文档字符串中引用模式。这是一个精简的片段
@app.route('/colors/<palette>/')
def colors(palette):
"""Example endpoint returning a list of colors by palette
This is using docstrings for specifications.
---
parameters:
- name: palette
in: path
type: string
definitions:
Palette:
type: object
properties:
palette_name:
type: array
items:
$ref: '#/definitions/Color' <--------
responses:
200:
description: A list of colors (may be filtered by palette)
schema:
$ref: '#/definitions/Palette'
examples:
rgb: ['red', 'green', 'blue']
"""
感兴趣的线是$ref: '#/definitions/Palette'
。但是,这只是definition
对文档字符串中的部分的内部引用。
有没有办法只替换对schema/schema1.py
模块的引用?换句话说,我们如何才能在同一个项目中放入对模块的模式引用?
像$ref: 'schema/schema1.py#FooSchema'
......?关于棉花糖模式的例子对我来说不是很清楚。