6

「name」属性と「tags」属性を持つ Photo クラスがあります。私の目標は、写真のタグを入力されたものに置き換える更新機能を Rails に実装することです。たとえば、「タグ」が [] に設定されている JSON オブジェクトを PUT しようとすると、写真からすべてのタグをクリアしたいと考えています。

ただし、ボディ パラメーターの 1 つとして HTTParty を介して空の配列を送信すると、HTTParty が [] を nil に変換していると思われます。したがって、Rails バックエンドの photos#update エンドポイントは、パラメーター「タグ」に対して何も受け取りません。写真からタグを削除する機能を失うため、HTTParty が [] を nil に変換しない方法を探しています。

4

2 に答える 2

-1

空の配列を params に割り当てるだけです。次に例を示します。

params[:photo][:tags] ||= []

params[:photo][:tags] がまだ設定されていない場合は、空の配列が割り当てられます。それが機能しない場合は、キーを調整する必要があることを意味します。たとえば、:tags がなくても :tag_ids がある場合は、params[:photo][:tags] を記述する必要があります。HTML構造を確認してください(いつでもここに貼り付けることができます。私がお手伝いします]。私が知る限り、これは標準的なアプローチです:)

于 2013-03-14T01:12:48.703 に答える