我试图将一个名为nbReports的内部可填充元素设置为null,到目前为止我已经失败了。
下一步是XSD文件和代码的快照:
<xs:element name="reports" type="tns:Reports"/>
<xs:complexType name="Reports">
<xs:sequence>
<xs:element minOccurs="0" name="description" type="xs:string"/>
<xs:element minOccurs="0" name="reportingGroups">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0"
name="reportingGroup" type="tns:ReportingGroupType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ReportingGroupType">
<xs:sequence>
<xs:element name="title" type="xs:string"/>
<xs:element name="nbReports" type="xs:int" nillable="true"/>
</xs:sequence>
<xs:attribute name="id" type="xs:ID" use="required"/>
</xs:complexType>
代码快照:
import reports
rep=reports.reports()
rep.description="this report is ..."
temp=ReportingGroupType(id=xs.string("A1")
temp.title="this title")
temp.nbReports._setIsNil #"error: AttributeError: 'NoneType' object has no attribute '_setIsNil'
如果我尝试将nbReports设置为任何值(例如4)以创建nbReprots的实例,然后将其设置为null,那么当我打印它时,nbReprots值将保持为4。
答案 0 :(得分:0)
根据Ken的评论,我能够将nil属性设置为true:temp.nbReports._setIsNil(nil = True)。但是,在将nil属性设置为true之前,我必须创建一个nbReports实例(temp.nbReports = pyxb.BIND())。
感谢您的帮助。
玛莉卡