1

Rails gem 'bootstrap-editable-rails' (Bootstrap の X-editable) を使用しようとしています。

チェックボックスが欲しいのですが、x-editable にはチェックボックスがありません。代わりに、「チェックリスト」タイプを使用することになっています(x-editableがブール値のチェックボックスを処理できることを本当に望んでいます)。

これは私のRailsフォームコードです:

<td>
<a href="#" class="checklist" data-type="checklist" data-pk="1" data-resource="taskup" data-name="donebox" data-url="/taskups/<%= taskup.id %>" >
<%= taskup.donebox ? taskup.donebox : "False" %>
</a>
</td>

これはjquery(コーヒースクリプト)です

$(".checklist").editable
type: 'checklist'
source:
  1: "True"

x-editable ポップアップが表示されますが、"1" を donebox フィールドに保存する代わりに、"---- '1'" を入力します。

添付の写真を参照してください。

助けてくれてありがとう!

ここに画像の説明を入力

4

1 に答える 1

1

私は宝石なしでブートストラップ編集可能な 1.5.1 を使用し、チェックボックスで同様の問題に遭遇しました。 Rails のログに記録すると、次のようになります。

Parameters: {"id"=>"257", "geo_entity"=>{"is_current"=>["1"]}}

params メソッドのチェックボックス フィールドを次のように修正することで、この問題を回避しました (Rails がリソースの更新に期待する形式で params を準備していることもわかります)。

  params: (params) ->
    value = params.value
    # is_current will be a checklist and therefore
    # the value will be an array such as ['1']
    if params.name == 'is_current'
      value = params.value.unshift()
    #originally params contain pk, name and value
    newParams = id: params.pk
    newParams['geo_entity'] = {}
    newParams['geo_entity'][params.name] = value
    newParams

また、それを行うためのよりクリーンな方法を見たいと思います!

于 2013-12-12T16:06:12.177 に答える