Writing a Getter Method

DEX450 - Module 17: Working with Custom Controllers and Controller Extensions

📄 第 436 页 🎬 视频课程

课程章节介绍

今天我们来聊聊Salesforce中的Getter方法。首先,记住一个原则:除非你有特别的理由不这么做,否则使用共享模式通常是最佳的选择。共享模式,有时候也被称为“在系统模式下运行”,这意味着你的代码可以访问所有数据,不受用户权限的限制。 现在,如果你在编写控制器扩展或自定义控制器时,没有特别声明使用共享或不共享模式,那么系统默认会给你系统模式。这意味着你的代码将拥有访问所有数据的权限,这在某些情况下非常有用。 接下来,我们来看看标准控制器。所有的标准控制器都有一个叫做getBody()的方法。这个方法允许你通过{!object.field}这样的语法来访问对象的数据。这是一个非常方便的特性,因为它让你能够轻松地从页面上获取和显示数据。 再来说说Getter方法。这个方法通常用于根据URL中的id参数来查询并获取特定记录的数据。你可以使用这样的代码来实现: ```apex ID recordId = ApexPages.currentPage().getParameters().get('id'); return [SELECT id, listofotherfields FROM Object WHERE id = :recordId]; ``` 这段代码的作用是从数据库中查询出与URL中提供的id相匹配的记录,并且只返回那些你明确列出的字段。这样,你就可以在页面上访问这些数据了。 最后,记住,这种模式不仅限于标准控制器,你也可以在自定义控制器的代码中使用它。这样,你就可以根据需要灵活地获取和展示数据了。 希望这些信息对你有帮助,如果你有任何问题,随时问我!