工作流和博客模块问题

时间:2018-05-03 15:21:44

标签: apostrophe-cms

我使用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.查看文章(崩溃)

非常感谢您解决此问题的任何帮助。

此致 格拉德隆

1 个答案:

答案 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以获取具有相同堆栈跟踪的一些提示。

祝你好运!