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