2016-07-19 6 views
0

選択されていない要素を扱うために@actionデコレータを使用できますか?Flask-Admin未選択のカスタムアクション

我々は

@action 
def action_custom(self, ids): 

idsを使用=ページ上の要素を選択したが、我々は、ここで選択されていない要素を取得することができますか?

答えて

0

Flask-Adminでaction.jsをハックし、未チェックの行を非表示の値として含めるように送信フォームを変更してから、送信されたフォームのgetlistメソッドを使用してpython @actionメソッドでこれらの値を取得できます。 action.jsで21行で

我々は持っている:

$('input.action-checkbox', form).remove(); 
$('input.action-checkbox:checked').each(function() { 
    form.append($(this).clone()); 
}); 

form.submit(); 

変更は、このように未チェックの列がフォームに含まれています。 jQueryのセレクタで:not(:checked)の使用を注意して値が'notrowid'という名前の隠された入力に保存されます。

$('input.action-checkbox', form).remove(); 

$('input.action-checkbox:not(:checked)').each(function(i, v) { 
    form.append($('<input>').attr({'type':'hidden', 'name':'notrowid', 'value': v.value})); 
}); 

$('input.action-checkbox:checked').each(function() { 
    form.append($(this).clone()); 
}); 
form.submit(); 

今すぐあなたのpythonで(パイソン2)あなたは、次の操作を行うことができます@action方法:

@action 
def action_custom(self, ids): 
    _not_selected_ids = request.form.getlist('notrowid') 
    print _not_selected_ids 
関連する問題