Invoking Controller Extensions and Custom Controllers in Visualforce Pages

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

📄 第 430 页 🎬 视频课程

课程章节介绍

让我们来聊聊Visualforce页面中控制器和控制器扩展的使用。首先,想象一下你正在做一个项目,你需要一个主控制器来管理主要的逻辑,但有时候你可能还需要一些额外的功能,这时候控制器扩展就派上用场了。 在Visualforce页面中,你可以通过``标签来指定使用哪种控制器。如果你想要使用Salesforce提供的标准控制器,你可以这样写: ```html ``` 这里的`standardController`属性指定了你要使用的标准控制器,比如`Account`控制器。 如果你想要使用自定义的控制器,你可以这样写: ```html ``` 这里的`controller`属性指定了你的自定义控制器类名,比如`CustomAccountController`。 现在,如果你想要添加一些额外的功能,你可以使用控制器扩展。控制器扩展是通过`extensions`属性来指定的,你可以列出多个扩展,它们会按照你列出的顺序从左到右被评估。例如: ```html ``` 在这个例子中,`Extension1`会首先被检查,然后是`Extension2`。如果`Extension1`中有你想要调用的方法,比如`save`,那么这个方法会被执行。如果`Extension1`中没有这个方法,那么Visualforce会继续检查`Extension2`,如果还没有,最后会回到标准控制器或自定义控制器中的方法。 记住,你只能选择一个主控制器,要么是标准的,要么是自定义的,不能同时使用两者。但是,无论你选择哪种主控制器,你都可以添加多个控制器扩展。 希望这个解释能帮助你理解如何在Visualforce页面中使用控制器和控制器扩展。如果有任何疑问,随时问我!