【发布时间】:2015-07-27 18:04:57
【问题描述】:
我有一个在 SilverStripe(CMS 版本 3.1)上运行的站点,其中包含一个自定义模块,包括一个 ModelAdmin 类。它在开发中显示得很好(如下所示,在页面下方),但在生产中不是。该模块根本没有在生产中注册,无法通过生产中的 URL 访问表单。
服务器上的代码是最新的。事实上,随后的更改按预期工作。
我之前曾尝试转储 SilverStripe 缓存,但无济于事。什么样的问题可能会导致这种情况,我应该从哪里开始正确调试?
编辑:无论用户类型如何,即使是默认管理员,该模块似乎都不会显示给任何人。
【问题讨论】:
-
可能是权限问题。确保您已将自定义管理员的权限授予 Security->Groups->(GroupName)->Permissions 中的相应组。
-
如果它显示给管理员用户但不显示给编辑者,则如上所述,这是一个权限问题。更新代码后,您是否在生产服务器上运行了 dev/build 和刷新?您是否在 prod 机器上使用 composer 安装了所有模块?您的日志中有任何错误吗?
-
您是否在 ModelAdmin 中使用
canView()?
标签: silverstripe