我正在构建一个具有列表视图的移动应用程序,该列表视图显示文章的链接。该应用程序的内容由Directus提供支持。
列表视图具有
title
description (200 characters, no HTML)
image
文章有
title
content (html)
image
为了节省API请求的大小,我将列表视图数据存储在名为articles_list
的集合中,并将文章存储在名为articles
的集合中。
为了使Directus对作者直观,我需要在articles_list
集合中创建/更新/删除项目时自动在articles
集合中创建/更新/删除项目。
两个集合存储的数据基本相同,除了articles_list
具有description
而不是content
之外。删除HTML标签后,description
字段的前content
个字符为200个。
我看了钩子文档,但不确定如何在其他集合(articles_list
)中创建新项目。使用外部库(例如ezyang / htmlpurifier)的最佳方法是什么?我该如何调试钩子?
任何帮助将不胜感激。我仍在学习了解Directus的工作原理。
答案 0 :(得分:2)
我建议创建一个包含4个字段的集合:
title
excerpt (/ description)
content (html)
image
然后,您可以使用fields
参数仅在概览页面上请求title
和excerpt
,以节省一些带宽/延迟:
/items/articles?fields=title,excerpt
这也免除了您使两个集合保持同步的麻烦,并且避免了必须存储重复数据
答案 1 :(得分:0)
您的问题在这里,如果您想从挂钩中更改另一个集合字段,更好的方法是使用ZendDB Example filter hook to update item with related field