ホームページ  >  記事  >  バックエンド開発  >  作成/更新時に createdAt フィールドを無視しますが、JSON 応答を返します

作成/更新時に createdAt フィールドを無視しますが、JSON 応答を返します

王林
王林転載
2024-02-09 17:12:101136ブラウズ

作成/更新時に createdAt フィールドを無視しますが、JSON 応答を返します

データの作成または更新操作を実行するとき、createdAt フィールドの値を無視してデフォルト値だけを維持したい場合があります。この目的は、タイムスタンプを手動で設定することによるデータの不整合を引き起こすことなく、データが作成または更新されるたびに同じタイムスタンプを使用することです。同時に、JSON 応答を返すときに createdAt フィールドのデフォルト値を保持する必要もあります。 PHP では、いくつかの簡単な操作でこの機能を実現できるため、コードの可読性と保守性が向上します。この記事では、PHP で作成/更新するときに createdAt フィールドを無視し、JSON 応答を返すときにデフォルト値を保持する方法を紹介します。

質問内容

Goに構造体があるのですが

リーリー

そしてコントローラー (ルート) があります

リーリー

オブジェクトの作成または更新時にフィールド CreatedAt/UpdatedAt の入力を無視するにはどうすればよいですか?この方法では、サーバー (クライアントではなく) がフィールドに入力する責任を負います。では、JSON は何を送信するのでしょうか?ただし、このフィールドの値を応答でクライアントに送信する必要があります。

現在 JSON を送信するとき:

リーリー

Gin は、この値を構造体にバインドします。もう一度要約すると、これらの書き込みフィールド (クライアントから受信した場合) を無視し、読み取り応答でそれらのフィールドを提供したいと考えています。

以前試したことがあります:

バインド: 「-」ですが、これは機能しません (入札確認)

json: "-" ですが、これにより応答フィールドが非表示になります。

解決策

私は長い間解決策を考えてきました。私の質問の下のコメントを読んだ後。私は自分にとって完璧に機能する選択をしました。ただし、このアプローチは、私が他の言語 (PHP Symfony、Python Django) で使用したものとはまだ似ていません。 ###モデル### リーリー

コントローラ(ルート)

リーリー

もっと良い提案があれば、喜んでコメントをお待ちしております

以上が作成/更新時に createdAt フィールドを無視しますが、JSON 応答を返しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。