[英]How to extend a fhir class?
我想 append 一些与 FHIR 相关的数据,比如患者或状况 object 以进行进一步处理。 我试图在 python 中扩展 FHIR 患者 class。 收到以下错误。 有人可以在这里给我一些有用的指示吗? 谢谢!
import fhir.resources.patient as pt
patient = pt.Patient.parse_file('patient.json')
class Patient2(pt.Patient):
def __init__(self,validDia):
self.validDia=validDia
newPatient = Patient2(1)
print(newPatient)
---------------------
File "pydantic\main.py", line 357, in pydantic.main.BaseModel.__setattr__
ValueError: "Patient2" object has no field "validDia" ```
如果你想扩展你的 model 你必须使用Pydantic 模型。
对于patient.json
文件,我使用了来自fhir dock的数据
代码示例:
import json
import fhir.resources.patient as pt
class Patient2(pt.Patient):
validDia: int
with open("patient.json", "r") as file:
json_obj = json.load(file)
json_obj.update({"validDia": 1})
newPatient = Patient2.parse_obj(json_obj)
print(newPatient)
print(newPatient.validDia)
和 output:
>>> resource_type='Patient' fhir_comments=None id='p001' ...cut out... validDia=1
>>> 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.