Python数据类-从属性名称获取元数据

时间:2019-11-06 07:28:15

标签: python-3.x attributes metadata python-dataclasses

我有一个看起来像这样的数据类:

    $MyWhere = "id = ? OR gamer_tag = ?"
    if(game_name !="") $MyWhere = $MyWhere." Or game_name = ?";
    $stmt = $connection->prepare("SELECT * FROM $config->tablename WHERE ".$MyWhere." LIMIT ?");
if(game_name !=""){
       $stmt->bind_param("ssss", $request->id, $request->game_name, $request->gamer_tag, $request->limit);
}
else{
    $stmt->bind_param("sss",$request->id,$request->gamer_tag, $request->limit);
}

您会看到元数据字典具有外部内部名称字段 我想通过功能例如访问这些 get_ext_name(attribute_name)->,它将在元数据字典“ ext_name”下返回属性名称

是否有一种时尚的方法?

谢谢

1 个答案:

答案 0 :(得分:0)

因此,感谢GeeksForGeeks上的vibhu4agarwal,我找到了这种方法。

将此方法添加到类中将起作用:

def ext_name(self, attribute_name):
    return self.__dataclass_fields__[attribute_name].metadata['ext_name'])

如果有更好的解决方法,我很乐意看到它

这是文章的链接: https://www.geeksforgeeks.org/data-classes-in-python-set-3-dataclass-fields/