项目管理插件

这是一个用于管理 Discourse 任务依赖的插件。
它基本上将一个分类转换为一个项目,并将该分类中的主题转换为该项目的任务。
您可以定义任务之间的依赖关系。本质上,即哪些任务必须在其他任务开始之前完成。您还可以定义开始日期、结束日期和任务持续时间。如果您在某个地方更改了这些日期,它会自动设置依赖任务的开始和结束日期。
它还会在分类标题中显示最早开始日期和最晚结束日期。
项目的总持续时间也将被计算。您还可以锁定任务,以防止自动计算开始和结束日期时影响它们。
此 YouTube 视频解释了如何使用它:

待办事项:

  • 在移动设备/窄屏幕上显示消息
  • 添加主题列表视图,以拓扑顺序显示任务(并稍微缩进依赖项)
  • 使用消息总线通知其他用户有关更改的信息
  • 为项目任务添加修订功能
  • 添加子项目支持(一个子项目将是一个项目中的任务,同时也是其自己的分类)
  • 使 UI 更美观(使用链接代替按钮等)
  • 编写测试
  • 添加日历视图 @Bank_LiveProjects management plugin - #10 by Bank_Live 中提出
  • 任务状态:已完成 / 尚未完成
  • 错误:在分类 ID 更改时调用 setup projects_task,而不是在 composer 初始化时调用

安装

按照 Discourse 官方 Meta 中的 安装插件 指南操作,将 git clone https://github.com/spirobel/projects.git 作为插件命令使用。

我依赖你。
你依赖我。
谁是依赖者?
谁又是被依赖者?

GitHub 上的代码

30 个赞

好主意,我该如何通过创建新任务作为新主题来添加自己的字段(例如事件插件的日期等自定义字段)?

3 个赞

我不太确定我是否理解对了您的问题,您具体想做什么呢?

我想添加自定义字段,例如标题和标签,以便后续可以轻松地以 JSON 格式访问,并方便进行操纵、计算、搜索等操作。

2 个赞

这实际上不是一个简单的问题。一方面,你需要在前端处理大量情况。对于这个插件,我还没有处理完所有情况。正如你所见,修订功能仍在待办事项列表中。此外,还有数据保存的问题,以及是否明智地使用插件商店。这个话题在以下帖子中有所提及:

我编写这个插件也是想弄清楚,真正的数据库表是否真的能带来显著优势。仅依靠插件商店,是无法实现这种复杂的依赖逻辑和后端错误检查(包括在“预演”操作失败时回滚)的。我认为这是一个权衡。对于某些用例,插件商店已经足够。但若要处理更复杂的功能,我认为离不开“真正的”数据库表。我还计划在进一步探索后写一篇博客文章。如果我们从更抽象的角度来看,我们想要实现的是:利用 Discourse 共同编辑结构化数据。目前,要“简单地”为帖子或主题添加自定义字段确实很困难,但我认为这可以变得更容易。我还想完全移除编辑器,仅将主题用于数据录入。我还不知道最终会怎样,但这里有一些头脑风暴:Why not create an OPEN SOURCE platform dedicated to open source drug discovery ? · Issue #581 · OpenSourceMalaria/OSM_To_Do_List · GitHub
也许这两种类型的插件也可以像我在该 GitHub 问题中所解释的那样结合使用。这样,你可以在没有普通 d 编辑器、而是使用专用数据录入编辑器的主题中输入数据,然后在仍保留 d 编辑器的主题中引用这些数据。这些其他主题也可能像项目管理插件那样拥有额外的字段。

https://github.com/discourse/discourse/blob/master/app/assets/javascripts/discourse/templates/components/composer-editor.hbs

请将上述内容当作一种探索性想法,毕竟我还没有时间进行充分测试。等我度假回来后,我会整理一份详细的说明 :smiley:

5 个赞

遗憾的是,插件现在无法启动。

已损坏

1 个赞

太好了!希望未来能为每个周期添加图表。

您能发布一下错误信息吗?这样我才能帮您。:slightly_smiling_face:
另外:此插件使用自己的表,因此安装后需要重新运行迁移。应该是类似 rake db:migrate 的命令。有关更多详细信息,请查看安装指南。

1 个赞

好的,你能不能画个图,具体说明一下你想要什么?我会考虑一下的。:smiley:

1 个赞

好的,我的意思是同样的。

1 个赞

好的,我已经把它添加到待办事项列表中了,这很合理。我现在正在休假,回来后会查看。:smiley:

这种样式会让页面看起来更实用。

感谢您创建这些内容。我肯定会等待后再使用。

1 个赞

确实存在资源编译问题。

我已修复并部署到服务器:https://cidian.social/c/build-house/5
我打算使用此插件来规划我的项目,并将持续改进它。

2 个赞

启动仍失败:

失败
--------------------
Pups::ExecError: chown -R root /var/lib/postgresql/12/main 执行失败,返回状态码为 #<Process::Status: pid 41 exit 1>
失败位置:/pups/lib/pups/exec_command.rb:112:in `spawn'
执行失败,参数如下:{"cmd"=>["chown -R root /var/lib/postgresql/12/main", "[ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/12/bin/initdb -D /shared/postgres_data || exit 0", "chown -R postgres:postgres /shared/postgres_data", "chown -R postgres:postgres /var/run/postgresql"]}
1 个赞

你好,感谢再次尝试!你使用的是哪个版本?我上次测试的版本是:2.5.0.beta4。它正在我们的测试服务器上运行:https://cidian.social/c/build-house/5

好的,看来问题出在这里:
https://meta.discourse.org/t/clean-install-upgrade-fails-because-of-pg12/151212

大家好,我是社区艺术平台上的 Discourse 新用户。我正在寻找一个适合我们 Discourse 社区内小型项目的潜在项目管理插件。这个插件还在使用吗?

1 个赞

这是我为了学习如何编写 Discourse 插件而写的首个插件。目前它仍处于未完成状态。我尚未决定该插件未来的发展方向,但我肯定会继续完善它,并复用已编写的代码。如果您能分享一下您的使用场景,我将不胜感激!如果通过私信交流让您更自在,也完全没问题!:smiley:

5 个赞

感谢你的出色工作 @spirobel

这个插件目前的状况如何?我很想在我的实例中使用它,但担心安装一个开发状态不明的插件。

谢谢!

3 个赞

我目前正在重写我的基础编辑器插件,之后我可能会回到这个插件上。但我需要重新思考这个插件的目标用户群体。我很乐意听到您打算如何使用它。同样,任何阅读此内容的人:请写下您希望如何使用 Discourse 来管理您的项目。也许我们可以一起头脑风暴:slight_smile: :+1:

2 个赞