我使用Apostrophe Sandbox因为它几乎适合我的用例。 我添加了Workflow,因为我需要两种语言。
现在,如果我添加博客文章并希望查看该应用程序崩溃,并出现以下错误:
C:\Users\Gradlon\Desktop\apostrophe\node_modules\apostrophe-workflow\lib\api.js:568
if (locale.match(/-draft$/)) {
^
TypeError: Cannot read property 'match' of undefined
at Object.self.draftify (C:\Users\Gradlon\Desktop\apostrophe\node_modules\apostrophe-workflow\lib\api.js:568:16)
at getTwo (C:\Users\Gradlon\Desktop\apostrophe\node_modules\apostrophe-workflow\lib\api.js:274:70)
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:718:13
at iterate (C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:262:13)
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:274:29
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:44:16
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:723:17
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:167:37
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\apostrophe-workflow\lib\api.js:270:16
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\apostrophe\lib\modules\apostrophe-docs\lib\cursor.js:1086:18
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:52:16
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:1209:30
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\apostrophe\lib\modules\apostrophe-docs\lib\cursor.js:1379:18
at C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:52:16
at Immediate.<anonymous> (C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:269:32)
at Immediate.<anonymous> (C:\Users\Gradlon\Desktop\apostrophe\node_modules\async\lib\async.js:44:16)
经过一些测试后,我将其缩小到以下行,导致错误:
<div class="demo-blog-author">
<div class="demo-blog-author-image">
{% if data.piece._author.thumbnail.items.length %}
{{ apos.singleton(data.piece._author, 'thumbnail', 'apostrophe-images', { noHeight: true, edit: false}) }}
{% endif %}
</div>
<div class="demo-blog-author-bio">
{% if data.piece._author %}
{{ apos.area(data.piece._author, 'body', {
widgets: {
'apostrophe-rich-text': {}
}
}) }}
{% endif %}
</div>
</div>
正如我在第一个回答中所建议的那样,我尝试使用enterpüriseTestbed。 https://github.com/apostrophecms/apostrophe-enterprise-testbed 这导致了同样的错误! 采取的步骤 1.下载回购。 2.安装模块。 3.恢复MongoDB。 4.启动应用程序。 5.添加一篇包含链接作者的博客文章。 6.查看文章(崩溃)
非常感谢您解决此问题的任何帮助。
此致 格拉德隆
答案 0 :(得分:0)
如何初始化apostrophe-workflow
?您在app.js
中传递了哪些选项?
在上下文中看起来根本没有设置区域设置本身: https://www.npmjs.com/package/apostrophe-workflow#localizing-and-internationalizing-websites
也许你还需要跑?
$ node app apostrophe-workflow:add-missing-locales
另请参阅https://github.com/apostrophecms/apostrophe-workflow/issues/164以获取具有相同堆栈跟踪的一些提示。
祝你好运!