课程章节介绍
今天我们来聊聊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相匹配的记录,并且只返回那些你明确列出的字段。这样,你就可以在页面上访问这些数据了。
最后,记住,这种模式不仅限于标准控制器,你也可以在自定义控制器的代码中使用它。这样,你就可以根据需要灵活地获取和展示数据了。
希望这些信息对你有帮助,如果你有任何问题,随时问我!