Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typo3 值的类型必须为';xx和x27;受限访问导致的错误_Typo3_Extbase - Fatal编程技术网

Typo3 值的类型必须为';xx和x27;受限访问导致的错误

Typo3 值的类型必须为';xx和x27;受限访问导致的错误,typo3,extbase,Typo3,Extbase,我有一个产品数据库扩展。基于Extbase+Fluid。 一切正常,但我有一个访问受限的问题 有些产品只针对特定的用户群体。当我设置了一个组,有人使用这个产品的direkt链接时,如果没有登录,登录站点应该会出现 它适用于网站,但通过产品,我得到了: 该值的类型必须为“xx”,但其类型为“NULL”。错误 我还使用realUrl enable404forInvalidAlias是为我的分机设置的,因此一个不存在的产品调用会导致404页面,但不幸的是,我至今无法处理受限访问问题 版本为:4.5.2

我有一个产品数据库扩展。基于Extbase+Fluid。 一切正常,但我有一个访问受限的问题

有些产品只针对特定的用户群体。当我设置了一个组,有人使用这个产品的direkt链接时,如果没有登录,登录站点应该会出现

它适用于网站,但通过产品,我得到了:

该值的类型必须为“xx”,但其类型为“NULL”。错误

我还使用realUrl

enable404forInvalidAlias
是为我的分机设置的,因此一个不存在的产品调用会导致404页面,但不幸的是,我至今无法处理受限访问问题

版本为:4.5.22 解决方案应该在没有重大更新的情况下工作

更新:

在我的
showAction
中,使用
=NULL
默认值定义的产品

我的流体模板中已存在如下条件:

<f:if condition="{product}">
...
</f:if>

我进行了一些调试,整个showAction都运行了。

您可以通过某种方式更改操作,使其不允许您的产品实例,并检查fluid中是否存在:

public function showAction(Tx_YourExt_Domain_Model_Product $product = NULL) ..
在流体中:

<f:if condition="{product}">
   <f:then> <!-- show your product --> </f:then>
   <f:else> 
      <!-- show a login form, e.g. something you have in typoscript -->
   </f:else>
</f:if>

这样做的缺点是,您无法轻松处理正确的404


还有一个和上面的组合,它应该是直截了当的处理适当的404的。不过,我不确定这是哪一个TYPO3版本。

实际上这两个版本都是很好的建议,但我也有。对于我更新我的问题时出现的错误,我认为问题出在这一部分,当它尝试加载对象时,但由于受限(fe_组)访问,它无法返回,这是来自核心的异常。我查看了我的代码,发现缺少=NULL声明。谢谢你的帮助,这让我找到了解决办法。
<f:if condition="{product}">
   <f:then> <!-- show your product --> </f:then>
   <f:else> 
      <!-- show a login form, e.g. something you have in typoscript -->
   </f:else>
</f:if>