3
私は、422以上の異なるhttp-responseコードでレスポンスをレンダリングするためのベストプラクティス/ソリューションを探しています。この検証が失敗したとき:(競合) - 紛争Railsの検証エラーメッセージ:デフォルトのバリデータにレスポンスコードを追加
validates :name, presence: true, uniqueness: {message: 'duplicate names are not allowed!'}
私は、ステータスコード409を返すようにしたい:
は、私はシンプルなバリデータを持っています。考えられる解決策:- エラーにステータスコードを追加します。
errors.add(status_code: '409')
。次に、ステータスコードをエラーからレンダリングするか、複数存在する場合はレンダリングします(422)。
上記の問題の解決策は、標準のバリデーターでerrors.add
関数を呼び出す方法がわかりません。私はそれが検証結果に基づいて、異なるステータスコードをレンダリングすることができる程度たい
if model.save
render json: model, status: :created
else
render json: model.errors, status: :unprocessable_entity
end
:
は、コードをレンダリングするマイ。この場合
'頭部:葛藤'? –
@ MaximFedotovこの残りのAPIサーバが純粋に休憩コールを処理している場合のジョブ。グラフィカルなもの、特定のjson構造をレンダリングする必要はありません;) –