2014-12-28 163 views
2

我正在使用Yii bbii forum模块,它工作正常。但现在我想添加comments-module,所以每个论坛帖子都可以单独评论。如何在yii中为每个论坛帖子添加评论,使用bbii论坛模块和评论模块

在的游戏内它可能看起来: enter image description here

我跟着指令是什么here,但我不能使它工作:(

enter image description here enter image description here

为什么我竟然需要包括这个文件,如果我想添加只是评论?

enter image description here

当我添加相同的小部件到用户页面(仅用于测试) - 我得到了“这个项目不能评论”,这很好,因为可能我没有在main.php中正确的配置。 enter image description here

用户模型视图中的窗口小部件和论坛视图之间的差异是传入其中的数据。 这里:尝试在论坛提交评论时

public function actionPostComment() 
     { 
      if(isset($_POST['Comment']) && Yii::app()->request->isAjaxRequest) 
      { 
       $comment = new Comment(); 
       $comment->attributes = $_POST['Comment']; 
       var_dump($comment); 

的var_dump返回this,并在用户视图页面here

而且可能它甚至不可能将这些组合到模块中?我在Yii真的很新。

更新时间:

基本上我所做的是:

  • exstracted评论模块(下protected->模块)在main.php
  • (下protected->配置)加入模块阵列中的所有配置:
  • 'comments'=>array(    
          //you may override default config for all connecting models 
          'defaultModelConfig' => array(
           //only registered users can post comments 
           'registeredOnly' => false, 
           'useCaptcha' => false, 
           ....... 
    
  • 和查看文件_post.php加入下列:

     <?php $this->widget('comments.widgets.ECommentsListWidget', array(
                 'model' => $data, 
                )); 
    
  • var_dump($data)给出this(当这被称为在控制器,其中柱reseaved)。

+0

你的问题包含了很多关于什么以及如何甚至是截图等的信息 - 这是非常特殊的,非常好的;-)但是如果你介绍了你可以做的事情,它可能会更好。我不认为人们会阅读链接的页面。有很多评论等,所以我们不知道你现在到底有什么。 – t3chb0t

回答

0

给出一个错误的讯息:

包括(BbiiPost.php):未能打开流:没有这样的文件或目录

你说的Bbii正在与Yii,当你试图添加评论时,它破裂。 链接到您的var_dump文件已损坏,但我确实尝试读取它们;)

它看起来像comments模块干扰了POST路径,因此当表单提交进来时它与其他路径不同这是YiiBase自动加载器混淆的根源。

您可以尝试明确地将BbiiPost.php的路径添加到自动加载器的搜索路径,或查找include("BbiiPost.php")行的位置并将其更改为绝对路径。

另一种可能性是,您所在的论坛页面上有添加注释的链接,但页面路由尚未从路由中获取。所以它可能是POST链接的评论实际上是在/ forum/123/comment/add而不是/ comment/add。所以当表单提交时,它正在尝试注释/添加控制器/操作,但发现它在/ forum/view中,并且对包含文件的路径感到困惑。

我一般发现Yii(v1)[v2文档更好]的说明最好是这些模块的片状。很多时候,页面上的源代码下载链接指向代码的老版本,因为项目通常会移到其他地方。您通常需要具备相当出色的PHP/Yii知识来调试这些用户提交的模块并使其工作。