Using Field Tokens

DEX455 - Dynamic Apex 完全指南:Describe 信息、动态 SOQL/SOSL 与动态 DML

📄 第 204 页 🎬 视频课程

课程章节介绍

好,我们来看一下如何在Apex里访问一个字段的“标记”,也就是字段的元数据信息。你可以把它理解成字段的身份证,通过它我们能知道这个字段的各种属性。 首先,获得字段标记最简单的方法,就是直接用这个字段所在的sObject类型的静态成员变量。比如,Account.Description,这样就能拿到“账户”对象上“描述”这个字段的标记。另一种方法,如果你已经有了字段的描述结果,可以调用它的 getSObjectField() 方法,同样能得到这个标记。 那拿到标记之后,怎么去查看字段的详细描述呢?你只需要在字段标记上调用 getDescribe() 方法,或者直接访问这个字段的成员变量,就能得到字段的描述结果,里面包含了字段类型、长度、是否必填等等信息。 另外,如果你想把一个对象里所有的字段名字和它们的标记对应起来,可以用一个叫 getMap() 的方法。它会返回一个映射,键是字段名,值就是字段标记,这样你就可以很方便的通过名字找到想要的字段了。 但是要注意一点,对于个人账户,字段标记这种用法是不支持的,这时候你就老老实实用字段名字符串去操作。 还有一个小细节,当你在已安装的托管包里描述字段的时候,哪怕你的org没有启用Chatter,Chatter相关的字段也会出现在描述结果里,这是一个已知的行为。 总结一下,字段标记是我们在动态代码里操作字段的钥匙,掌握它的获取和使用,能让你的代码更灵活。

关键词

Apex Salesforce Developer Guide