Joomla データベースとは異なる、リモートで接続する必要があるデータベースがあります。
他のモデル内でこれを簡単に実行できますが、JModelAdmin が機能するには JTable が必要と思われるため、いくつかの問題が発生しています。
代わりに外部データベースを使用するために JTable インスタンスをオーバーライドしようとしましたが、動作したくないようで、「リセット」でエラーが発生します。私の推測では、JTable にはコア Joomla テーブルへのアクセスも必要です。
これを行う簡単な方法はありますか?それとも、コアをオーバーライドすることが唯一のオプションですか?
編集: 明確にするために、Joomla をデータベースに接続してクエリを実行することができます。唯一の問題は、JTable が外部データベースで適切に初期化することを拒否することです。
これが私のモデルの私のコンストラクタです:
function __construct($config = array()){
$config['dbo'] = TireApiHelper::tireAPIDB();
parent::__construct($config);
}
これはリストモデルでは機能しますが、管理モデルでは機能しません。私のリストモデルにはテーブルクラスは必要ありませんが、コントローラーは管理モデルを使用して公開/非公開にする必要があります。これが問題です。JTable は現在設定されている DB インスタンスを使用しますが、Joomla エラーなしで false を返します (コードによると、false を返すと joomla エラーが表示されるはず$table
です。