问题标签 [directus]

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 回答
908 浏览

directus - Directus:向其他用户隐藏项目

设想:

  • 我有 3 个具有不同角色的用户(adminsiteAadminsiteBadmin)。
  • 我有一个由 2 个站点(siteAsiteB)使用的集合。
  • 为集合设置了一个自定义挂钩,以将外部电子邮件发送给管理员用户
  • 通过公共API 发布数据。

目标:我想在 siteBadmin 列表中隐藏来自 siteA 的数据。如果不创建自定义页面,这可能吗?还是最好为 siteB 创建一个重复的集合?

实现目标的任何其他选择?

TIA

0 投票
1 回答
540 浏览

javascript - 如何在 vuex 中添加新对象并通过 API 调用存储图像 url

我正在尝试学习 vue,但我坚持从 API 获取数据。我正在使用 directusSDK 从 directus 获取数据,并且我能够从 API 获取数据,但我无法将图像 URL 存储在状态的新对象中,有人可以告诉我如何在状态中添加新对象属性并将图像 URL 存储在其上.

这是我的代码

成功获取 imgUrl 我对我的代码进行了更改,并从 API 获取了 imgUrl,但现在的问题是它没有得到正确的 imgUrl,而是分配了随机的 imgUrl。

这是我更新的代码:

0 投票
2 回答
825 浏览

php - 首次安装 directus 时 /projects 出现错误 500

我已经在我的 VPS(Debian 10、PHP 7.3、Apache 2.4.38)上安装了当前版本的 directus。

运行基于浏览器的安装时,/logs 中出现错误:

[2020-02-27 20:31:59] api[].ERROR: ParseError: 语法错误,意外的“?”,预期 /var/www/clients/client0/web16/web/vendor/symfony 中的变量 (T_VARIABLE) /translation-contracts/TranslatorTrait.php:44

对我来说,这听起来像是一个错误的 PHP 版本,但 PHP 7.3 正在运行。

我不知道这是否重要,但是忽略这一点后,在您输入数据库连接参数的页面上,对 /server/projects 的 POST 返回错误 500“内部服务器错误”。

我找不到任何日志条目。

  • 如何找到 500 的原因?
  • 是否可以在没有基于浏览器的安装的情况下配置应用程序?

编辑master从to 切换回来v8.5.5,在这个源代码中,有一个 trans 函数:

所以确实有类型?string

IMO,我的 PHP 版本应该能够处理这个问题。但在此之前,我有 Debian 9 和 PHP 7.0,我遇到了同样的问题,这就是将 Debian 从 9 升级到 10 的原因。

Debian 9 的编译缓存是否仍然存在?

但我想这不是主要问题。我的问题是我收到一个错误 500,除了 apache error.log 中的 500-log-entry 之外,我看不到任何东西来诊断这个问题。

0 投票
0 回答
43 浏览

php - 每个钩子有条件地要求 M2O 入口

我目前正在构建一个简单的产品管理,它使用状态来跟踪产品状态生命周期。我最近添加了一个名为“handles”的新表,它只是product_idhandle(简单的文本输入)。为简单起见:

在此处输入图像描述

我创建了一个 hook.php 文件,该文件已经加载并可以工作。

只要更新的顺序是这样的,它就可以完美地工作:

  1. 新建product状态为“草稿”
  2. 添加新handle产品并保存产品
  3. 将状态切换为“详细”

这有效,因为现在我确实有一个“句柄”并且我的代码有效(count()不为零,所以上面的检查不会抛出UnprocessableEntityException)。

但是如果我的步骤是这样的:

  1. 创建新product的状态为“详细”(没有任何handle

我不知道如何编写我的钩子,所以我可以检查使用时未保存的关系字段item.create.products:before。任何提示我如何在将关系字段保存到数据库时检查它?

提前致谢!欢迎任何帮助!

0 投票
1 回答
346 浏览

docker - Docker 和网络钩子?

我将 Directus 与 Docker 一起使用,一切正常。

现在我正在尝试使用 Webhook,但出现以下错误:当我尝试在集合中添加数据时,出现以下错误: “cURL 错误 7:无法连接到 localhost 端口 3001:连接被拒绝” 。

当我运行 docker ps 时:

我的码头工人撰写:

我的网络钩子:

在此处输入图像描述

0 投票
2 回答
2293 浏览

directus - Directus - 如何在 api 中显示 Many2Many 关系

我正在尝试在 Directus 中创建博客。我创建了博客集合和类别集合。我正在使用具有多对多关系的联结表将类别连接到博客。我可以创建一个新的博客文章并从类别集合中选择类别,我也可以添加一个新类别。但是当我在 api 中调用时,它没有在我的 rest api 调用中显示类别字段。我可以调用类别端点并查看rest api中所有类别的列表,但在博客集合端点中,我无法查看相关类别名称。

我想在我的 rest api 中查看每个博客帖子的所有选定类别名称。我想在我的rest api中调用类别集合时查看所有博客文章,方法是输入项目名称/项目/类别/外星人/这样的类别名称,这样我就可以看到所有外星人类别的博客文章。

目前我通过在 json 中调用我的博客集合来得到这个 -

如何在 rest api 上获取类别名称?

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

0 投票
0 回答
50 浏览

directus - 在directus中从模块添加监听器

我想为 Directus 创建一个扩展(比如一个模块),我想听一个事件。但脚本仅在模块打开时执行。

启动 Directus 时如何附加监听器?

0 投票
3 回答
746 浏览

php - 如何在 Directus 中的多对多关系上显示标签?

我已经通过 directus 管理应用程序将工作的多对多关系添加到 directus api,但是在 directus 应用程序中,当要将项目添加到集合中时,选择选项的标签不会被传播。我能够正确选择项目并保存所有内容,因此我知道正确设置了多对多关系,但我无法正确传播标签。我尝试了几种不同的方法,包括使用 . 符号来访问相关集合中的字段,但无济于事。

使用点表示法时,关系从不加载,只显示加载符号,而在标签中没有任何内容时,关系不加载,但没有标签。

下面是几个截图:

这是我贴标签的地方

这是多对多关系之一

这是在使用点符号或标签中的任何内容时永远不会改变的加载符号。

0 投票
1 回答
150 浏览

php - 直接使用数据库更新内容时,如何在 Laravel 中使用适当的数据更新搜索索引?

我正在为nurserypeople.com设置搜索功能,并且我正在使用Directus CMS 来管理和更新内容,而网站用户将与基于Laravel 构建的网络应用程序进行交互。

我将使用 Laravel Scout 作为搜索索引,我相信使用 Algolia 搜索 API。由于我将通过 Directus 进行更新,Directus 直接在数据库上进行编辑,而不是通过 Laravel(使用 save() 方法),我担心我的搜索索引不会在我编辑和制作时使用 Laravel Scout 更新自己更改内容。

有没有办法确保内容被正确编入索引,比如每周/每天一次,这样我每次更新内容时就不必通过命令行手动更新索引?

谢谢!

0 投票
1 回答
603 浏览

docker - 从 dockerfile 创建自己的 Directus 映像

我下载了 Directus.io repo https://github.com/directus/directus,我想创建自己的图像。如何使用 Dockerfile 进行操作。

我试图从 repo docker https://github.com/directus/docker运行脚本,但我收到错误消息: