私は CakePHP が初めてで、誰かがこれで私を助けてくれることを願っています。自力では解決できません。
次の列を持つ「ゲーム」テーブルがあります。
- id
- date
そして、次の列を持つ 2 番目のテーブル「レポート」:
- id
- report
- game_id (foreign key)
ゲームhasOne
レポートとレポートbelongsTo
ゲーム。
既存のゲームにレポートを追加するフォームを作成しようとしています。新しいレポートを追加するたびに、重複したレコードが作成されます。Cake が ID を知らない場合、これが発生することを読みました。デバッグすると、id フィールドが空になります。
これが私の目的です。ゲームのレポートがまだない場合は追加リンクが表示され、特定のゲームのレポートが存在する場合は更新リンクが表示されます。または、レポートがあるかどうかに応じて、レポートを追加または編集するフォームへのリンクがそれぞれ 1 つあります。これはどのように行うことができますか?
beforeSave()
-function で、レコードをいつ作成し、いつ編集するかを指定できることを読みました。どうすればこれができるのかわかりません。
現在、私の唯一の解決策は、フォームを検証して game_id を設定isUnique
し、この game_id を持つレポートが既に存在することをユーザーに通知することです。
これを手伝ってくれた人に感謝します!