1

ユーザーがモンゴイド オブジェクトの 1 つのフィールドをレンダリングされた JSON テキストとして編集できるフォームを作成したいと考えています。Rails アプリが理解できないモデルにフィールドがありますが、汎用エディターを公開したいと考えています。したがって、このフィールドについては、きれいな JSON としてレンダリングし、大きく公開して<textarea>から、編集後に JSON を解析して戻します。

これを行う方法は 12 通り考えられますが、Rails の哲学と最も一致し、通常の足場との相違が最も少ない方法は何だろうと考えています。コントローラーでオブジェクトを JSON テキストにレンダリングする必要がありますか? 次に、and メソッドでそのコードを繰り返し、and メソッドで構文解析コードを繰り返さなければなりませんが、newこれeditは少しぎこちないようです。より再利用可能なヘルパーまたはカスタム フォーム ウィジェットを定義する方法はありますか? それとも、すでに書かれたものですか?updatecreate_form.html.erb

4

2 に答える 2

3

モデルで、独自の属性ライター/リーダーを作成できます。

  attr_accessible the_field_raw

  def the_field_raw
    self.the_field.to_s
  end

  def the_field_raw=(value)
    self.the_field = JSON(value)
  end

whitchはフォームジェネレーターと互換性があり、コントローラーに余分なコードがないようにする必要があります。

それが役に立てば幸い!

于 2013-01-12T12:58:19.510 に答える