2014-02-01 1 views
3

Я новичок в этом поле. Первый раз, когда вы пытаетесь закодировать страницу VisualForce.Страница VisualForce для нового пользовательского объекта

Я создал пользовательский объект с именем «Заказ». Добавлено одно настраиваемое поле с именем «Учетная запись», которое ссылается на объект учетной записи. Я хотел бы переопределить кнопку «По умолчанию» с моей собственной страницей VF.

Это мой код контроллера:

public class orderExtension { 

    private final Order__c order; 

    public orderExtension (ApexPages.StandardController stdController) { 
    order = (Order__c) stdController.getRecord(); 
    } 
} 

Это мой VF кодовая страница:

<apex:page standardController="Order__c" extensions="orderExtension"> 
<apex:sectionHeader title="Order Edit" subtitle="New Order"/> 
<apex:form > 
    <apex:pageBlock title="Order Edit" mode="edit"> 
     <apex:pageBlockButtons > 
      <apex:commandButton value="Save and Add Products" action="{!save}"/> 
      <apex:commandButton value="Cancel" action="{!cancel}"/> 
     </apex:pageBlockButtons> 
     <apex:pageBlockSection title="Order Information" columns="2"> 
      <apex:inputField label="Account" value="????"/> 
     </apex:pageBlockSection> 
    </apex:pageBlock> 
</apex:form> 
</apex:page> 

Не могли бы вы помочь мне с InputField? Образцы кода будут оценены.

Спасибо, Лиора

ответ

3

Это довольно просто :)

<apex:inputField value="{!Order__c.Account__c}"/> 

Но, возможно, лучше будет изменить его немного. Измените определение order переменной в вершине этого:

public Order__c order {get;set;} 

Я не знаю, почему вы отметили его как частный (= не может быть изменен с Visualforce) и конечного (используется, а в тех местах, где вы не» я вообще хочу что-то изменить).

А потом в Visualforce вы можете обратиться к нему так:

<apex:inputField value="{!order.Account__c}"/>