複数のテーブルを使用するコンポーネント (フロント エンド) を作成しようとしています。質問に部分的に答えている投稿を1つまたは2つ見つけましたが、実際には答えていません。ポイントは、やり方を知っている人にとっては常に単純明快に思えますが、実際に説明されることはありません (または、適切な投稿を見逃していました)。
私のコンポーネントでは、ユーザーは 2 つのテーブルに格納する必要がある 1 つのビューにデータを入力します。標準の Joomla User テーブル、つまり # __users Joomla に含まれていないデータを格納するための追加のテーブル、つまり # __users_complements
初心者なので間違っているかもしれませんが、joomlaの標準機能ではフォームの結果を一つのテーブルにしか保存できないことがわかりました。私の場合、モデルの標準関数 com_component / model / my_model.php をオーバーライドする必要があると思います。
1) どの関数をオーバーライドする必要があるのか よくわからないため、混乱しています: save ()? お店 ()?他の?
2) save() 関数をオーバーライドするとします。すべてのコードを書き直してデータを保存する (データ配列を展開し、すべての更新クエリを作成する) か、2 つの標準テーブル オブジェクトを作成する必要があります。
この場合、(2 つのオブジェクト) データ配列全体を毎回親関数に送信するのは奇妙に思えます。なぜなら、一部はテーブル 1 用であり、他の部分はテーブル 2 用であることがわかっているからです。ドンの前に分割できるはずです。私じゃない?
3) フォームからデータを取得し、モデルの保存機能を呼び出すときに、2 つのモデルを作成し、それらのモデルをコントローラーから管理する必要がありますか?
複数のテーブルでこの保存を行う方法を明確にするのを手伝ってもらえますか? コード付きの例は非常に高く評価されます。ありがとうございました