1

Yii 擅长的一件事是动态创建内容管理系统和类似系统。此类系统通常重量轻且可扩展,因为它们利用了 Yii 框架并且仅使用所需的功能,而使用现成的开源 CMS 解决方案(例如 Drupal)则无法实现。

我过去曾使用它来这样做,但复杂程度最低。例如,用户可以编辑内容,但是我硬编码了控制器/操作/视图文件并将内容发送到每个页面。

我将如何将我的内容管理系统创建提升一个档次并允许以编程方式创建页面?我想这样做,以便用户可以创建一个新页面并指定一个 URL。

我考虑重新使用相同的控制器并将其映射到不同的视图文件,具体取决于用户的选择,但我对解决此问题的其他方法持开放态度,我认为其他人必须解决这些问题。

另外,允许用户指定一个 URL 是一个重要的特性,如何传递呢?

为基于长文本的问题道歉。我想不出如何以任何其他格式适当地捕获我的用例。

提前致谢。

4

2 回答 2

1

例如,创建名为users_articles_uris.

该表将包含主键和 URI 本身(例如my-cool-title-for-something)。以后会变成:yoursite.com/my-cool-title-for-somethingyousite.com/controller/action/<users_special_uri>

通过.htaccess或使用 Yii 路由,您将:

  1. 获取URI;
  2. 在数据库中找到它;
  3. 获取文章的id;
  4. 找到文章;
  5. 打印您需要的数据。
于 2013-04-03T17:33:50.427 回答
0

常用的选项是将 URI 存储在数据库中。与用户内容在同一行中,或者创建一个表来存储对用户内容的 URI 和 id 引用。

发出请求时,只需从 DB 中提取请求的 uri 数据(因为 uri 不是动态的。甚至如此..)并显示内容(我认为 WP 会做类似的事情,但企业系统也会这样做),

当然,缓存好:)

于 2013-04-03T11:19:41.967 回答