我在做的是按习俗分类的提供者,对标签有选择性的投入,但我发现的挑战是,扼杀使用ValueString()从主要价值中取回。 tf, 无法确定哪类用途。 MapType。
该守则是:
type ResourceModel struct {
InstanceName types.String `tfsdk:"instance_name"`
Id types.String `tfsdk:"id"`
Labels types.MapType `tfsdk:"labels"`
}
func (r *vmResource) Schema(_ context.Context, _ resource.SchemaRequest, resp *resource.SchemaResponse) {
resp.Schema = schema.Schema{
Attributes: map[string]schema.Attribute{
"instance_name": schema.StringAttribute{
Required: true,
},
"id": schema.StringAttribute{
Required: true,
},
"labels":schema.MapAttribute{
Optional: true,
},
},
}
}
var plan ResourceModel
diags := req.Plan.Get(ctx, &plan)
if resp.Diagnostics.HasError() {
return
}
request := VmCreate{
InstanceName: plan.InstanceName.ValueString(),
Id: plan.Id.ValueString(),
Labels: plan.Labels.????
}
寻找解决办法,但所有我都试图失败。