Heim  >  Artikel  >  Backend-Entwicklung  >  So fügen Sie mit Yii ein Kommentarformular in die Artikeldetailseite eines Einzelbenutzer-Blogsystems ein

So fügen Sie mit Yii ein Kommentarformular in die Artikeldetailseite eines Einzelbenutzer-Blogsystems ein

不言
不言Original
2018-06-19 14:51:281186Durchsuche

In diesem Artikel wird hauptsächlich die Methode von Yii zum Einfügen eines Kommentarformulars in die Artikeldetailseite eines Einzelbenutzer-Blogsystems vorgestellt. Er analysiert die spezifischen Techniken von Yii zur Implementierung der Kommentarformularfunktion auf der Artikeldetailseite mit Beispielen Bedarf kann darauf verweisen

Das Beispiel in diesem Artikel beschreibt Yiis Methode zum Einfügen eines Kommentarformulars in die Artikeldetailseite eines Einzelbenutzer-Blogsystems. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Aktionsteil:

<?php
function test($objs)
{
 $objs->var=10;
}
class one
{
 public $var=1;
}
$obj=new one();
echo $obj->var.&#39;<p>&#39;;
test($obj);
echo $obj->var;
exit;

PostController.php-Seite:

...
/**
* Displays a particular model.
* @param integer $id the ID of the model to be displayed
*/
public function actionView($id)
{
  $post=$this->loadModel($id);
  $comment=$this->newComment($post);
  $this->render(&#39;view&#39;,array(
    &#39;model&#39;=>$post,
    &#39;comment&#39;=>$comment,
  ));
}
protected function newComment($post)
{
  $comment=new Comment();
  if(isset($_POST[&#39;Comment&#39;]))
  {
   $comment->attributes=$_POST[&#39;Comment&#39;];
   if($post->addComment($comment))//==============================
   {
    if($comment->status==Comment::STATUS_PENDING)
     Yii::app()->user->setFlash(&#39;commentSubmitted&#39;,&#39;Thank you...&#39;);
    $this->refresh();
   }
  }
  return $comment;
}
...

models/Post.php Seite:

...
public function addComment($comment)
{
  if(Yii::app()->params[&#39;commentNeedApproval&#39;])
   $comment->status=Comment::STATUS_PENDING;
  else
   $comment->status=Comment::STATUS_APPROVED;
  $comment->post_id=$this->id;
  return $comment->save();
}
...

post/view.php Seite:

...
<p id="comments">
<h3>Leave a Comment</h3>
<?php if(Yii::app()->user->hasFlash(&#39;commentSubmitted&#39;)): ?>
 <p class="flash-success">
 <?php echo Yii::app()->user->getFlash(&#39;commentSubmitted&#39;); ?>
 </p>
<?php else: ?>
 <?php $this->renderPartial(&#39;/comment/_form&#39;,array(
 &#39;model&#39;=>$comment,
 )); ?>
<?php endif; ?>
</p><!-- comments -->
...

Das Obige ist der gesamte Inhalt dieses Artikels, der für das Studium aller hilfreich sein wird Achten Sie auf die chinesische PHP-Website!

Verwandte Empfehlungen:

Nutzungsanalyse des Front-End-Ressourcenpakets, das mit dem Yii-Framework in PHP geliefert wird

Über Yii Implementierung von Methoden zur Handhabung von Front- und Backend-Anmeldungen

Das obige ist der detaillierte Inhalt vonSo fügen Sie mit Yii ein Kommentarformular in die Artikeldetailseite eines Einzelbenutzer-Blogsystems ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn