0

求人ビューに検索フォームを追加しようとしています。結果をフィルタリングする検索フォームとともに、利用可能なすべてのジョブのリストであるはずです。検索フォームは、データベース データを事前に入力する必要があるチェックボックスで構成されています。

そこで、いくつか質問があります。

  1. フィルターを使用してこれを達成する必要がありますか、それとも正しい方向を見ていますか?
  2. どこから始めればよいか、前に下のビューでフォームに使用されるコードを追加しようとしましたが、どのクラスから継承する必要があるかさえわかりません。

getListQuery() と組み合わせた "JModelList" 以来。いくつかの JForm などと継承されたクラスを試しましたが、次のエラーが表示されます: 18行目のviews\jobs\tmpl\default.php」

フォームの作成に問題はありません。オブジェクトに必要な crud 操作の良い例がいくつかあります。ただし、a) リスト ビューとフォームを組み合わせる場合、または b) データがあらかじめ入力された検索フォームのようにフォームを動作させる必要がある場合は、そうではありません。

私は基本的にこれらの 2 つのビューを組み合わせることに固執しています。フォーム フィールドなどが正しいかどうかをテストすることさえできません。以下は、モデル ジョブのスニペットです。ここで私を助けるために他のコードが必要ですか?

(これはここでの最初の質問です。ご容赦ください。必要に応じて質問を調整します。)

コード スニペット:

<?php

/* ------------------------------------------------------------------------
  # jobs.php - jobs Component
  # ------------------------------------------------------------------------
  # author    Breens Nick
  # copyright Copyright (C) 2013. All Rights Reserved
  # license   GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
  # website   www.nick.breens.be
  ------------------------------------------------------------------------- */

// No direct access to this file
defined('_JEXEC') or die('Restricted access');
// import the Joomla modellist library
jimport('joomla.application.component.modellist');

/**
 * Jobs Model
 */
class JobsModeljobs extends JModelList {

    /**
     * Method to build an SQL query to load the list data.
     *
     * @return      string  An SQL query
     */
    protected function getListQuery() {
        // Create a new query object.
        $db = JFactory::getDBO();
        $query = $db->getQuery(true);
        // Select some fields
        $query->select('*');
        $query->from('#__yourstudent_jobs');

        return $query;
    }
}

?>
4

1 に答える 1

0

Joomla Coding 3.0 サブフォーラムのフォーラム投稿のおかげで、答えが得られました。

私の場合はフィルターを使用し、記事に基づいてコンポーネントを作成する必要があると誰かが答えました。次に、適切なチュートリアルを検索したところ、3.0 にも適用されるこの 2.5 ベースのチュートリアルが見つかりました。

誰かが興味を持っている場合は、私のコードを以下に投稿します。(型式はそのままです。)

于 2013-09-16T08:14:23.533 に答える