0

CakePHP で承認を得てレコード編集を処理する最良の方法に関する情報を見つけることができませんでした。

具体的には、ユーザーがレコード内のデータを編集できるようにする必要がありますが、編集されたデータは、管理者が変更を承認するまで元のレコード データを上書きしてはなりません。編集したレコードを新しいテーブルに入れ、承認時に元のレコードを上書きすることもできますが、このアイデアはいわばケーキの哲学とうまく機能していないように見えるので、もっと簡単な方法があるのではないかと思います.

4

2 に答える 2

2

管理者が承認できるまで、そのデータを保存する場所が必要になります。

新しい編集と元の投稿 ID を使用して別のテーブルを作成するよりも、これがどのように簡単になるかはわかりません。その後、管理者が編集を承認すると、スクリプトは編集されたバージョンで古いレコードを上書きします。

于 2009-12-18T18:18:05.020 に答える
1

私は同様のセットアップに取り組んでおり、ドラフト レコードを同じテーブルに保存しますが、「ドラフト」と呼ばれるレコードにフラグを設定します。また、元のレコードには、ドラフト レコードの ID が格納された「draft_id」フィールドがあります。

次に、元のレコードが表示エンジンによって読み込まれると、モデルでは通常どおり表示されます。ただし、編集またはプレビュー アクションがレコードをロードしようとすると、「draft_id」フィールドがチェックされ、設定されている場合は他のレコードがロードされます。

「下書き」フラグは、リストやその他のグループ検索タイプのアクションが下書きレコードを取得しないようにするために使用されます。これは、より高度な SQL クエリによっても解決される可能性がありますが、私は SQL があまり得意ではありません。

于 2009-12-19T00:09:18.060 に答える