我正在尝试将文章相互链接。场景定义如下
以文章 A、B 和 C 为例。
- 管理员将 A 链接到 B。因此,我们会自动将 B 的链接添加到 A。
- 管理员将 B 链接到 C。因此,我们自动添加 C 到 B(正常场景)以及 C 到 A 的链接(因为 B 链接到 A)。(我该怎么做?我尝试了下面的代码但无法继续前进)
- 管理员删除了从 B 到 C 的链接。因此,我们会自动删除 C 到 B 以及 C 到 A 的链接。
我的代码:
public function executeLinkarticle(sfWebRequest $request) {
$this->articleId = $request->getParameter('id');
if ($request->isMethod('POST')) {
$articles = $request->getParameter('articles');
$articleId = $request->getParameter('articleId');
foreach ($articles as $linkedArticleId) {
//Linking A To B
$linkedArticleObj = new BlogArticleLinkedArticle();
$linkedArticleObj->setArticleId($articleId);
$linkedArticleObj->setLinkedArticleId($linkedArticleId);
$linkedArticleObj->save();
//Linking B To A
$linkedArticleObj = new BlogArticleLinkedArticle();
$linkedArticleObj->setArticleId($linkedArticleId);
$linkedArticleObj->setLinkedArticleId($articleId);
$linkedArticleObj->save();
//linking C to A code
Checking the Database Table IF B is LINKED WITH A(i.e already linked) THEN how to link C to A ?
}
return $this->renderText();
}
}
表结构
ID | ARTICLE_ID | LINKED_ARTICLE_ID