2016-01-11 6 views
2

У меня есть приложение для флэков с моделью peewee, которая использует флэшку-администратора. Я хочу включить редактирование полей JSONB во всплывающем окне. Я поставил column_editable_list в поле JSONB в моей модели:Как мне получить флажок-admin, чтобы разрешить встроенное редактирование поля PostgreSQL JSONB с использованием модели peewee?

class AuthModelView(AuthMixinView, BaseModelView): 
    column_editable_list = ('attrs',) 

Поле JSONB сам объявлен:

attrs = BinaryJSONField() 

Я не уверен, что я должен сделать, чтобы получить JSON, чтобы показать в редактируемом всплывающем меню вместо [object Object].

enter image description here

Я попытался определения ул, Юникода и Repr методы на модели, содержащей AttrS JSONB, но это не сработало. Должен ли я определять пользовательский XEditableWidget?

Стоит отметить, что форма редактирования может отображать и редактировать JSON:

enter image description here

Я не вижу, почему рядная форма не использует то же самое отображение типа поля?

+0

Недавно я добавил поддержку hstore: https://github.com/flask-admin/flask-admin/pull/1158 Однако нам все равно нужно добавить поддержку JSON. Я думаю, что это будет похоже на поддержку hstore, но это потребует некоторых изменений в javascript form.js. – pawl

+0

Спасибо за ваш ответ. На самом деле мне не нужен ключ, значения разделены в форме метки/редактирования из JSON, как я видел в вашем запросе на pull. Мне просто нужно сделать строку JSON редактируемой, как не-встроенная форма на скриншоте выше. Я подозреваю, что это условное и несколько строк javascript или небольшое принуждение здесь: https://github.com/flask-admin/flask-admin/blob/2a724048fe0c9dd8f6723e6540ce4687845170a9/flask_admin/model/widgets.py#L67-L95 –

ответ