3

私は最近、いくつかの基本的な Joomla 1.5 コンポーネントとモジュールを一緒にハッキングしていますが、MVC パターンがどのように機能するかを理解していないため、それに入るたびに髪を引き裂いてしまいます。私が遭遇する問題のいくつかの例:

  • ビューはどのようにモデルにアクセスしますか?
  • 別のビューに切り替えるにはどうすればよいですか?
  • モデルを定義する正しいファイルをどのように含めますか?

私のすべての質問に対する非常に単純な答えがあると確信しています: 私の主な問題は、全体的に、「ドキュメント」がまったく役に立たないと感じていることです。新しい MVC スタイル。API Web サイトが提供するのは機能のクラス ツリーだけであり、事実上コメントがまったくないため、API Web サイトは役に立たないというよりも悪いです。ドキュメント Web サイトは、管理者とコア開発者のみを対象としています。

Joomla 1.5 を使用している Web 開発者にとって役立つ情報源はありますか?

4

2 に答える 2

3

コア チームに関する記事がいくつか混じっていますが、ドキュメント サイトを最大限に活用できる開発カテゴリへのリンクを次に示します: http://docs.joomla.org/Category:Development ! フレームワークは、ドキュメントの方法でさらに多くを使用できます。

コントローラ クラスを使用しているdisplay()場合、タスクがどの関数とも一致しない場合、デフォルトで関数が呼び出されます。viewこれにより、変数の HTTP 要求がチェックされ、同じ名前のビューが表示されます。の値viewが指定されていない場合、エラーが発生します。これを回避する方法は、コントローラで関数を定義しdisplay()、 の値をチェックしてview、設定されていない場合はデフォルト値に設定してから、 を呼び出すことparent::display()です。mylistビューを表示するために最近のプロジェクトで使用したものを次に示します。

function display()
{
    $view = JRequest::getVar('view', '');

    if ($view == '') {

        JRequest::setVar('view', 'mylist');

    }

    parent::display();
}

ビューが読み込まれると、同じ名前のモデルも読み込まれます。その後、 を介してビュー クラスのモデル関数にアクセスできます$this->get()。たとえば、モデルに という名前の関数がある場合、を呼び出してその関数を呼び出すgetPreferences()ことができます$this->get('preferences')

于 2009-01-09T14:28:33.937 に答える
1

MVCレイアウトは、最初にそれを掘り下げて、Joomlaチームのコンポーネントを見るだけでは扱いにくい場合があります。

私が最初に自分のコンポーネントを設計したとき、それは非常に混乱して複雑であることがわかりましたが、Joomla1.5でMVCコンポーネントを作成するためのサンプルコンポーネントと基本的なチュートリアルを見つけました。http://www.vojtechovsky.net/joomla/component-helloworld-2-create-tutorial-guide-en.htmlで見つけることができます

また、MVCガイドラインに準拠した「TheSimple META管理スイート」を作成するときにも使用するので、ヘルパーとして使用する場合は、www.aqsg.com.auで見つけることができます。

お役に立てば幸い

于 2009-02-17T23:36:25.807 に答える