为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 python 代码中修复预期的 <type 'basestring'>

如何在 python 代码中修复预期的 <type 'basestring'>

紫衣仙女 2022-01-11 20:06:10
我正在使用 Troposphere 创建 CloudFormation 模板。如果我使用变量或字符串,我会收到错误 - <class 'troposphere.efs.FileSystem'>, expected <type 'basestring'>我是对流层和 python 的新手,因此感谢您的帮助。我使用字符串时的代码MyEFSMountTarget1a = t.add_resource(MountTarget(    "MyEFSMountTarget1a",    FileSystemId=(efs_file_system),    SecurityGroups=["sg-0c69656095ee1a5b8"],    SubnetId="subnet-091b67136896b2be8"))使用变量时的代码MyEFSMountTarget1a = t.add_resource(MountTarget(    "MyEFSMountTarget1a",    FileSystemId=(efs_file_system),    SecurityGroups=[efs_security_group],    SubnetId=PublicSubnet1a))错误: <class 'troposphere.efs.MountTarget'>: MyEFSMountTarget1a.FileSystemId is <class 'troposphere.efs.FileSystem'>, expected <type 'basestring'>我正在做的是从另一个 cloudformation 堆栈导入值并在另一个堆栈中使用它们。这是我填充变量的方式 -efs_security_group = ImportValue(Join("-", [params.ENVIRONMENT, "efsSecurityGroup"]),)PublicSubnet1a = ImportValue(Join("-", [params.ENVIRONMENT, "PublicSubnet1a"]),)它们被正确填充,我认为它们是突出的字符串 - 它们是。所以我想我不能对 SecurityGroups 或 SubnetId 使用字符串?我需要将字符串转换为基本字符串吗?如何?
查看完整描述

1 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

我的错误 - 这是文件系统 id - 我忘了给它添加一个引用 FileSystemId=Ref(efs_file_system),


查看完整回答
反对 回复 2022-01-11
  • 1 回答
  • 0 关注
  • 174 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号