【问题标题】:How do I make a collaborative information system? (like stackoverflow, only simpler)如何制作协作信息系统? (像stackoverflow,只是更简单)
【发布时间】:2009-09-03 02:50:33
【问题描述】:

我正计划创建一个自我管理的网站,人们可以在其中分享有关大量项目的特定信息。如下:

  1. 如果网站访问者正在寻找的项目不可用,他可以创建它。不需要注册。如果项目名称无效,其他访问者会帮助更正他的项目名称。

  2. 访问者可以将信息添加到其他访问者可以更正的项目。

基本上就是这样。

我的问题是:我需要学习(或使用)什么来实现这样的系统?例如,有什么好的阅读资源吗?我以前从未这样做过,也不知道从哪里开始。

类似维基百科的系统无法运行。我正在尝试编写一些非常简单且可供所有人使用的代码。

我正在使用 PHP 和 CodeIgniter 框架。

感谢您的帮助:)

【问题讨论】:

  • 所以基本上你想做简单的 CRUD 应用程序但不知道怎么做......

标签: php codeigniter


【解决方案1】:

我相信,如果您知道如何进行基本的 CRUD 操作,您所需要的只是一个修订表,其中包含用户对页面所做的各种编辑,以显示您选择编号最高的修订并提供回滚链接如果由于某种原因用户想要将页面恢复到以前的状态。

示例“文章”表架构:

id
user // if you want to
title
content
revision 
date_created
date_updated

更新查询示例:

UPDATE article SET title = $_POST['title'], content = $_POST['content'], revision = revision + 1, ... WHERE id = 42 LIMIT 1;

返回最新版本的 SELECT 查询示例:

SELECT * FROM article WHERE id = 42 ORDER BY revision DESC LIMIT 1;

【讨论】:

  • 是的,我想做你所描述的。有没有一个关键词,所以我可以研究它?例如,“wiki”可以让我获得大量我不感兴趣的类似维基百科的东西。
  • 检查我的编辑,你也可以尝试谷歌搜索“如何制作文章修订系统”或类似的东西。
【解决方案2】:

听起来您正在寻找一个简单的 wiki(MediaWiki,为 Wikipedia 提供支持的软件非常复杂)。更简单的是Faq-O-Matic

【讨论】:

  • 我在想这样的事情,用户在一个项目中输入有限数量的信息(比如 50 个字符),然后其他访问者要么向上/向下投票,要么插入一个完全不同的选项,或者帮助编辑它。
猜你喜欢
  • 2014-12-28
  • 1970-01-01
  • 2016-04-18
  • 2022-06-20
  • 1970-01-01
  • 2018-11-22
  • 1970-01-01
  • 1970-01-01
  • 2011-03-05
相关资源
最近更新 更多