15

私は mongoid と simple_form から始めています。:type => Boolean のモデルがあり、それを =f.input の (haml) ビューでレンダリングすると、チェックボックスではなくテキスト入力フィールドが作成されます。

ドキュメントには、ブール値はチェックボックスにマップされると書かれていますが、ブール値とブール値は同じように処理されていないと思われます。

:as => boolean を simple_form に追加することで回避できます。

1) それは期待されていることですか、それとも私が何か間違ったことをしていますか? 2) ブール値の一般的なマッピングを simple_form に追加する方法はありますか? 3) これを修正するには、simple_form の問題を生成する必要がありますか?

前もって感謝します。

4

2 に答える 2

12

残念ながら、現在、simple_form は Mongoid で「自動的に」機能しません。を指定する必要がありますas: :boolean

人々が Mongoid の統合を望んでいるという兆候がありましたが、まだ実現していないと思います。それでは、試してみませんか?イシュー トラッカーからの関連チケットを次に示します。

于 2012-10-22T03:50:41.943 に答える
0

David が述べたように、現時点では Mongoid は SimpleForm でサポートされていませんが、Mongoid::Document にパッチを適用して、次のようにうまく動作させることができます。

モジュールモンゴイド
  モジュール ドキュメント
    ARFakeColumn = Struct.new(:type, :limit, :number?)

    def column_for_attribute(attribute_name)
      attribute_name = attribute_name.to_s
      column_name = aliased_fields[属性名] || 属性名
      if fields[column_name] && fields[column_name].options[:type] == Mongoid::Boolean
        ARFakeColumn.new(:boolean, 100)
      そうしないと
        ARFakeColumn.new(:文字列, 100)
      終わり
    終わり
  終わり
終わり
于 2014-08-09T07:12:15.403 に答える