帐户的标准控制器空结果
standardController empty results for accounts
我正在做一个关于 standardController 的教程,但是我用预览按钮得到了空的账户结果:
<apex:page standardController="Account" recordSetVar="accounts" sidebar="false">
<apex:pageBlock>
<apex:pageBlockTable value="{!accounts}" var="a">
<apex:column value="{!a.name}"/>
</apex:pageBlockTable>
</apex:pageBlock>
</apex:page>
但我确实有记录:
select id, name, industry from Account
where name != null
and industry != null
limit 10
这是空的,所以我没有没有名字的账户
select id, name, industry from Account where name = null
鉴于字段名称存在于两个对象中,我对联系人进行了同样的尝试,只是将控制器更改为
standardController="Contact"
有什么想法吗?
编辑:只是为了好玩,现在我尝试了
standardController="Opportunity"
顺便说一句,帐户教程是这样的:https://trailhead.salesforce.com/content/learn/modules/visualforce_fundamentals/visualforce_standard_list_controllers
这个有一个非常相似的代码,用于帐户:https://www.youtube.com/watch?v=3NwiOqKLXQQ
StandardSetController 默认显示您最后选择的列表视图。如果您的列表视图具有愚蠢的条件,或者它是“最近查看的”并且您最近没有点击任何内容 - 是的,就是这样,空列表。
- 将列表视图更改为所有帐户并重新加载您的页面。
- 或在构造函数中调用
ssc.setFilterId()
以强制使用特定的列表视图。 (我看到你到目前为止只有纯视觉力量,没有 Apex)
- 我认为如果传入 URL
&fcf=listviewidhere
可以达到相同的效果,类似于列表视图在 Classic 中的工作方式。虽然已经有一段时间了,但它不是官方方法,您应该使用 setFilterId
- 或者完全根据您想要的查询结果构建 StandardSetController。 (合并this with
\[SELECT...\].getQuery()
)
我正在做一个关于 standardController 的教程,但是我用预览按钮得到了空的账户结果:
<apex:page standardController="Account" recordSetVar="accounts" sidebar="false">
<apex:pageBlock>
<apex:pageBlockTable value="{!accounts}" var="a">
<apex:column value="{!a.name}"/>
</apex:pageBlockTable>
</apex:pageBlock>
</apex:page>
但我确实有记录:
select id, name, industry from Account
where name != null
and industry != null
limit 10
这是空的,所以我没有没有名字的账户
select id, name, industry from Account where name = null
鉴于字段名称存在于两个对象中,我对联系人进行了同样的尝试,只是将控制器更改为
standardController="Contact"
编辑:只是为了好玩,现在我尝试了
standardController="Opportunity"
顺便说一句,帐户教程是这样的:https://trailhead.salesforce.com/content/learn/modules/visualforce_fundamentals/visualforce_standard_list_controllers
这个有一个非常相似的代码,用于帐户:https://www.youtube.com/watch?v=3NwiOqKLXQQ
StandardSetController 默认显示您最后选择的列表视图。如果您的列表视图具有愚蠢的条件,或者它是“最近查看的”并且您最近没有点击任何内容 - 是的,就是这样,空列表。
- 将列表视图更改为所有帐户并重新加载您的页面。
- 或在构造函数中调用
ssc.setFilterId()
以强制使用特定的列表视图。 (我看到你到目前为止只有纯视觉力量,没有 Apex) - 我认为如果传入 URL
&fcf=listviewidhere
可以达到相同的效果,类似于列表视图在 Classic 中的工作方式。虽然已经有一段时间了,但它不是官方方法,您应该使用 setFilterId - 或者完全根据您想要的查询结果构建 StandardSetController。 (合并this with
\[SELECT...\].getQuery()
)