2012-01-24 2 views
0

私はcodeigniterに慣れて以来、私はkohanaに新しいです。私はコハナに深く知りたいと思う面白いものがたくさんあることを認めなければなりません。そして、それはほとんどすべてにおいて、私の意見です。私が本当に感謝していることの一つは、それが動作する場合、自動生成されたAPIのブラウザです!私は、このようにHTML「ヘルパー」クラスを拡張:Kohana APIブラウザ

<?php defined('SYSPATH') or die('No direct script access.'); 
/** 
* Extend HTML helper 
*/ 
class HTML extends Kohana_HTML 
{ 
    /** 
    * HTML Wrapper for messages 
    * 
    * @param string message content 
    * @param string message author 
    * @param int message timestamp 
    * @return string 
    * @uses HTML::chars 
    * @uses Date::fuzzy_span 
    */ 
    public static function message($content, $author, $timestamp) 
    { 
     $formatted = '<div class="message">'; 
     $formatted .= self::chars($content); 
     $formatted .= '<span class="author">' . self::chars($author) . '</span>'; 
     $formatted .= '<span class="published">' . Date::fuzzy_span($timestamp) . '</span>'; 
     $formatted .= '</div>'; 
     return $formatted; 
    } 

} 

を私はユーザガイドの、その後のAPIブラウザに行くとき/application/classes/html.php 中のもの、私はクラスのリストを参照してくださいと書きましたHTMLもそこにあります。新しいメソッドもあります。リンクをクリックすると空白のページが表示され、別のクラス/メソッドをクリックしてもこの動作は変わらない。

私のhtml.phpファイルの内容をすべて削除すると、すべてのapiブラウザが再び動作するようです!私はすでにこの問題をWeb上で検索していますが、結果は見つかりませんでした。 解決策を見つけ出す手助けができますか?事前にTnxを入力してください

答えて

0

申し訳ありませんが、私はhtml.phpファイルをコントローラのディレクトリに入れるべきではないことを調査しました。代わりにクラスdirに入れなければなりません。申し訳ありませんが、私はクラスを持っていませんCIのdirので、私は完全にその父の笑を忘れる!私のような「盲目的な」人を助けることができると願っています!

0

また、あなたはそれが別のパーシャルをロードしたり、テンプレートに直接メッセージを設定し、それはそれが容易になります

<?php if ($message):?> 
<div class="message"> 
<?=$message?> 
<span class="author"><?=$author?></span> 
<span class="published"><?=Date::fuzzy_span($timestamp)?></span>'; 
</div> 
<?php endif;?> 

を行うには、親クラスを設定する方が良いでしょう...コントローラで をHTMLを使用しないでください他の人があなたのコードを読むことができるようになり、他の人と仕事をしているときにコードをよく理解しやすくなります。 また、コハナのコーディング規約を確認してくださいcoding convention section