Apex——练习2:获取当前account下的所有contact(涉及知识:自定义controller接收参数,page调用controller中的get方法)

继上一篇如何在自定义Controller和VF Page之间利用URL传输和获取数据,现在每一个account是一个链接,链接后显示该account下的所有contacts。

要接收参数,因此需要一个自定义controllr,并且要涉及到查询数据库,因此需要定义一个方法去查询当前account下的所有contacts

Controller:MyGetAllContacts

public class MyGetAllContacts {
    
    public List<Contact> getAllContacts(){
        
        //获取参数
        String accountId = ApexPages.currentPage().getParameters().get('accountId');
       
        //查找所有当前accountid下面的所有contacts
        List<Contact> contacts = [SELECT Name,AccountId,Title,Email,Description,Id FROM Contact WHERE AccountId=:accountId];
        return contacts;
    }
}

显示所有contacts的页面,与accountList差不多
ContactList

<!--设置属性controller便可使用自定义的controller-->
<apex:page controller="MyGetAllContacts">    
    <apex:form >
 
         <apex:pageBlock title="Contacts Lists" id="contacts_list">
         <!--{! AllAccounts}该表达式实际上调用了MyGetAllContacts的getAllContacts()方法,在page上省略了get前缀-->
           <apex:pageBlockTable value="{! AllContacts}" var="contact">

			<!--自定义列名-->
             <apex:column headerValue="Action">
                 <apex:outputLink value="./EditContact?core.apexpages.request.devconsole=1&AcccountId={!contact.AccountId}&Id={! contact.Id}">
                     Edit
                 </apex:outputLink>
                 &nbsp;|&nbsp;
                 <apex:outputLink value="{! URLFOR($Action.Contact.Delete, contact.Id)}" onclick="return confirm('Are you sure you want to delete this contact?')">
                     Del 
                 </apex:outputLink>
                 <!--这两个链接是为第三个练习作准备,两个链接,一个是对contact进行编辑修改,一个是对该contact进行删除-->
             </apex:column>
          
              <apex:column value="{!contact.Name}"/>
              <apex:column value="{!contact.Title}"/>
              <apex:column value="{!contact.Email}"/>
              <apex:column value="{!contact.Description}"/>
           </apex:pageBlockTable>
        </apex:pageBlock>
       </apex:form>
</apex:page>

练习三:对当前contact进行编辑修改,将数据回显到contactList页面中

发布了93 篇原创文章 · 获赞 26 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_38261445/article/details/102785090