0

Yiiフレームワークを使い始めたばかりですが、問題が発生しています。レイアウトとビューを設定しました。コントローラーでビューをレンダリングすると正常に機能し、出力はレイアウトなどの内部に表示されますが、ソースを表示すると何もインデントされません。HTMLの最終出力をインデントして、読みやすくエラーを見つけやすくする方法はありますか...

コントローラー/SchedulingController.php

<?PHP
class SchedulingController extends CController
{   
    public function actionStaffCalendar($calendarID)
    {
        $this->render('staff_calendar');
    }
}

views / layouts / main.php

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Website - <?PHP echo $this->pageTitle; ?></title>

    <script type="text/javascript" src="<?PHP echo Yii::app()->params['webRoot'] . '/assets/js/jQuery.js'; ?>"></script>
</head>
<body>

<?PHP echo $content; // views/scheduling/staff_calendar.php ?>

</body>
</html>

ビュー/スケジューリング/staff_calendar.php

staff calendar test....

編集 何らかの理由で、Google Chromeでソースを表示すると、すべてのHTMLが1行に表示されているように見えますが、テキストエディターにコピーするとすぐに、適切にインデントされます。ソースはmozillafirefoxで正常に表示されます。

4

1 に答える 1

0

いいえ、出力HTMLソースをフォーマットすることはできません(パフォーマンス上の理由からも合理的ではありません)。

  • Yiiで生成されたhtmlコントロールは、htmlツリーの深さを認識していません
  • 独自のビューファイルをフォーマットして、レイアウトに正しくネストされるようにすることもできますが、ソースレベルで読み取り可能にする必要があります。
  • つまり、Google Chrome開発者ツール(Ctrl-Shift-I)を使用して、フォーマットされたソースコードを表示できます。

または、本当に必要な場合は、次のようなものを使用します。

$html = $this->render('index',array('model'=>$model,), true);
echo formatHtml($html);
于 2012-05-22T18:43:17.447 に答える