Apex:Datalist显示空结果

时间:2012-08-23 12:38:55

标签: apex-code visualforce force.com

我正在尝试在datalist中显示自定义对象的行列表。

当我在常规对象上尝试这个时,它似乎有效,这很奇怪。

控制器

     List<Account> accounts;
     public List<Account> getAccounts() {
        if(accounts == null) accounts = [select id from Account limit 10];
        return accounts;
     }

Visualforce

     <apex:dataList value="{!accounts}" var="account" id="theList">
        <apex:outputText value="{!account.id}"/> 
     </apex:dataList>

这就像它使用的一样,它显示所有帐户的ID。当我使用自定义对象时,我得到一个空的子弹列表。像:

empty list

这具有正确数量的项目符号(有3项)。

我的控制器现在是

     List<AttributeMeetingroomAssociation__c> accounts;
     public List<AttributeMeetingroomAssociation__c> getAccounts() {
        if(accounts == null) accounts = [select id from AttributeMeetingroomAssociation__c limit 10];
        return accounts;

     }
当我在salesforce.schema中使用它们时,

[select id from AttributeMeetingroomAssociation__c limit 10]给出了3个正确的结果

任何人都有解决这个问题的方法吗?

2 个答案:

答案 0 :(得分:0)

您需要使用<apex:column>标记来显示结果。例如:

<apex:dataTable value="{!opportunities}" var="o">
    <apex:column>
        <apex:outputText value="{!o.Name}"/>
    </apex:column>
</apex:dataTable>

如果没有apex:column,则不显示任何数据。

答案 1 :(得分:0)

如果您位于“开发”站点,请在现场检查您的FLS(字段级别安全性)。转到“设置”>“开发”>“站点”>“站点标签”>“公共访问设置”>滚动到“自定义字段级安全性”>“对象名称[视图]”>“编辑”。选中“可见”标记,以查看它们应有权访问并保存的所有字段。