问题标签 [silverstripe-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
744 浏览

php - 将路径的基本名称注入 find exec 命令

我有一个有效的 PHP 命令:

我想将它包装到一个find -exec调用(或类似的)中,以递归地对文件夹执行此操作。

不幸的是,上面的代码不起作用(并且也不包括 basename (DIR) 变量的大写字母)。

实现这一目标的最佳方法是什么?

我根本没有结婚找,我很乐意使用其他任何东西,但希望我能保持在一条线上。

太感谢了!

0 投票
0 回答
43 浏览

php - Silverstripe ListboxField 嵌套数据对象

我必须从 XML 提要中导入以下结构:

  • 公司类型
    • 公司子类型

例如:

  • 工程
    • 结构工程
    • 建筑工程

我创建了两个 DataObject,如下所示:

专业标签.ss

ExpertiseSubTag.ss

也许 ListboxField 不是要走的路,但理想情况下,我想创建一个可以看到嵌套结构并进行多项选择的情况。继续:在持有人页面上,我创建了一个 ListboxField,我想在其中列出两个数据对象,而不是其中一个数据对象。

ListboxField 看起来像这样:

如何调整或重新创建代码以实现上述情况?也许 ListboxField 不是去这里的方式。

0 投票
1 回答
278 浏览

php - Silverstripe 4 - 未找到身份验证器类

我将允许预先生成的用户从 SilverStripe 4 网站前端页面注销,使用默认的 from。注销,因为登录有效。

问题是,如果登录的通用用户尝试通过单击Security/logout(以及Security/logout?BackURL=home/)之类的链接注销,它将被重定向到空白页面(仅显示页眉/页脚,因为默认Page.ss已实现)。显然控制器不起作用或类似,因为 URL 只是指向我Security/logout没有以下重定向。

因此,我尝试实现自定义身份验证器,就像我通常在 SS 3 中所做的那样,但我注意到了一些小的差异。然后,我按照官方文档建议的示例寻求帮助。

这是这种情况:

MemberAuthenticator 自定义类 (在MySite/code中)

MemberAuthenticator\LoginHandler 自定义类 (在MySite/code中)

MemberAuthenticator\LoginHandler 自定义类 (在 _MySite/ config/mysite.yml 中

有了这个实现,系统会抛出这个异常:

PHP 致命错误:在第 10 行的 /Applications/MAMP/htdocs/corporate/ss_corporate/corporate/code/UtenteAuthenticator.php 中找不到类“SilverStripe\Security\MemberAuthenticator\Authenticator”

任何人都可以建议我正确的方法吗?

提前感谢大家。

0 投票
2 回答
1976 浏览

silverstripe-4 - Silverstripe 4 错误日志

如何将错误记录到 SilverStripe 4 中的文件日志?我的意思是所有导致来自 SS 的“内部服务器错误”信息的错误

在 SilverStripe 中是:

文档说我需要做类似的事情:

我试试这个,但不能让它工作:(

0 投票
1 回答
414 浏览

php - SilverStripe 4 - 注销时的空白页面

正如我在这里所说,我将允许预生成的用户从 SilverStripe 4 网站前端页面注销,使用默认的 from。注销,因为登录有效。

问题是,如果登录的通用用户尝试通过单击Security/logout(以及Security/logout?BackURL=home/)之类的链接注销,它将被重定向到空白页面(仅显示页眉/页脚,因为默认Page.ss已实现)。显然控制器不起作用或类似,因为 URL 只是指向我Security/logout没有以下重定向。此外,会话没有被清除,如果我返回用户仪表板页面,结果仍然登录。

因此,我尝试实现自定义身份验证器,就像我通常在 SS 3 中所做的那样,但我注意到了一些小的差异。然后,我按照官方文档建议的示例寻求帮助。

这是这种情况:

MemberAuthenticator 自定义类 (在MySite/code中)

MemberAuthenticator\LoginHandler 自定义类 (在MySite/code中)

MemberAuthenticator\LogoutHandler 自定义类 (在MySite/code中)

MemberAuthenticator 注入 (在 _MySite/ config/mysite.yml 中

有了这个实现,什么都没有改变。

任何人都可以建议我正确的方法吗?

提前感谢大家。

0 投票
1 回答
241 浏览

php - SilverStripe 4 - 没有文件上传/通过 AJAX 写入数据库

正如这里所报告的,我遇到了一个与通过 ajax 请求上传到 CMS 上的文件相关的问题。基本上,我有一个前端表单,它必须通过 ajax 调用将文件发送到页面控制器。文件必须保存并与Member/DataExtension实现File::class/$many_many属性/关系的 a 相关(以便将它们保存并关联到每个 CMS 用户)。

这是我的方法:

我的Member Extension

涉案Controller人员:

这导致没有写入数据库文件表,也没有在设计的assets目标文件夹中上传文件。此外,不会抛出任何异常 - 它返回HTTPResponse所以我认为代码运行时没有错误?无论如何,这是请求结果:

标头 有效载荷

此时我不明白我在这里缺少什么。

谁能帮我发现错误?

提前致谢。

0 投票
1 回答
664 浏览

php - 将多个数据数组传递给 Silverstripe 中的模板

在 Silverstripe 4 中,我想在单个页面模板上使用两个循环。这些数组是在我的页面控制器内的单个函数内创建的。

我的想法是创建两个 ArrayList,然后将它们组合成第三个 ArrayList,然后将其传递给模板。

使用 SQLSelect,我有一些代码可以创建数据的 ArrayList。$queryArray 是一个 key=>value 对的数组。

我还有一些其他代码可以从相同的 $results 创建另一个 ArrayList:

然后,第三个 ArrayList 组合了这两个数组:

$mainArray 像这样传递给模板:

然后,在 WinesList.ss 模板中,我想我可以这样做:

如果我从页面控制器 var_dump() $mainArray , $mainArray 似乎拥有所有数据,但我无法弄清楚如何正确访问模板中的数据。

这甚至可能吗?如果是这样,我做错了什么?

0 投票
1 回答
64 浏览

php - SilverStripe 4 - 将上传的文件保存为成员扩展属性

我正在尝试通过 AJAX 请求将上传的文件保存到页面控制器,作为Member扩展属性。

我得到了一个Member DataExtension实现File具有关系的属性many_many,如下所示:

我的Member Extension

涉案Controller人员:

为了将文件与正确的Member. 我想我错过了正确的语法,因为我正在处理一个many_many关系,而这个不适合它:

我也尝试过这样的方法:

但我收到了这个例外:

[紧急] 未捕获的 BadMethodCallException: Object->__call(): 方法 'write' 在 'SilverStripe\ORM\ManyManyList' 上不存在

也许我必须转换AllegatiUploadDataObject第一个,然后在其中添加一个File属性以避免这种情况?

0 投票
1 回答
111 浏览

installation - silverstripe 安装错误“silverstripe/vendor-plugin 1.3.1 需要 composer-plugin-api ^1.1 -> 找不到匹配的包”

我正在尝试安装 silverstripe,但出现以下错误。您的要求无法解决为一组可安装的软件包。

问题 1 - silverstripe/vendor-plugin 1.3.1 需要 composer-plugin-api ^1.1 -> 找不到匹配的包。- silverstripe/vendor-plugin 1.3.1 需要 composer-plugin-api ^1.1 -> 找不到匹配的包。- silverstripe/vendor-plugin 1.3.1 的安装请求 -> silverstripe/vendor-plugin[1.3.1] 可满足。

请帮助解决它。

0 投票
2 回答
770 浏览

php - SilverStripe 4 自定义错误页面未显示

在我关于 SS 4 的最后一个项目中,我正在尝试创建我常用的自定义错误页面 - 使用与 v. 3 相同的方法:

  • ErrorPage.ss内部创造/themes/mysite/templates/Layout
  • 包括$Content内部模板;

成功后/dev/build?flush=all我看不到任何内容,也看不到正确的模板(我看到的是默认模板Page.ss)。

在后端有错误页面保存和发布。里面也有/assets/静态的。

也许这个新版本改变了程序?有什么建议吗?

提前谢谢大家。