0

フロントエンドとバックエンドの両方でフォーム送信を使用するコンポーネントを開発しています。

私はコンポーネントgetFormのようなものを使用しweblinkます。

現在、getForm()バックエンドでは動作しますが、フロントエンドでは動作しません。エラー メッセージが生成されますJform

weblinkビューとモデル(form)のコンポーネントと、フォームを表示するために何をしたかを知ることができません。

require_once JPATH_COMPONENT_ADMINISTRATOR.'/models/shop.php';
JTable::addIncludePath(JPATH_COMPONENT_ADMINISTRATOR . '/tables');

class componentNameModelShopForm extends componentNameModelShop
{

    public function getForm($data = array(), $loadData = true)
        {
            $form = $this->loadForm('com_componentName.shop', 'shop', array('control' => 'jform', 'load_data' => $loadData));
            if (empty($form))
            {
                return false;
            }
            return $form;
        }
}

このクラスにはgetItem()andloadFormData()メソッドもあります。

$formバックエンドでは問題なく動作しますが、フロントエンドでは常に false です。

フロントエンドではextendsこのモデル クラスを使用し、クラス宣言の前ではinclude_onceそれを使用します。

4

1 に答える 1

0

$this->ladForm()を含めずに、うまく機能する前にこの2行を追加することでJTable.

JForm::addFormPath(JPATH_COMPONENT_ADMINISTRATOR . '/models/forms');
JForm::addFieldPath(JPATH_COMPONENT_ADMINISTRATOR . '/models/fields');
于 2013-11-12T07:32:25.640 に答える