flask - 烧瓶石墨烯上传多个文件的正确方法
问题描述
我尝试使用 Upload Mutation 上传多个文件,但它不起作用,这很奇怪。
这是我的突变(它只接受单个文件并且工作正常)但我需要接受多个文件。怎么做?
class UploadMutation(graphene.Mutation):
class Arguments:
file = Upload(required=True)
success = graphene.Boolean()
def mutate(self, info, file, **kwargs):
f = open('/home/dmitriy/flask/{}'.format(file.filename), 'wb')
f.write(file.read())
f.close()
return UploadMutation(success=True)
解决方案
我发现它已经可以接受多个文件了。下面是如何在烧瓶中使用它的示例
class UploadMutation(graphene.Mutation):
class Arguments:
file = Upload(required=True)
name = graphene.String()
success = graphene.Boolean()
name = graphene.String()
def mutate(self, info, name, **kwargs):
files = request.files
for k,v in files.items():
f = request.files[k]
f.save(os.path.join('/youpath', f.filename))
print(k,v, name)
# do something with your file
return UploadMutation(success=True, name=files)
推荐阅读
- r - 将数据帧数组列拆分为多个二进制列 [R]
- c++11 - 将 std::vector 展开为参数包
- python - 在 Python 中模拟相关的对数正态
- javascript - 为什么导入 react pdf 会从我的 npm 库中破坏我的应用程序
- php - PHP DateTime::createFromFormat 返回错误的日期
- webforms - 无法使用 intl-tel-input 和 webform 获取国际号码
- java - 将 Decimal128 序列化为 JSON
- tensorflow - 带有 fit_generator() 与 fit() 的 Keras 进度条
- ios - 如何在动作过程中快速停止无限循环?(iOS)
- javascript - chrome memory devtool的距离字段中的“-”是什么意思