Возможно ли использовать виджеты IPython в Flask?

#python #flask #ipython #ipywidgets

#python #flask #ipython #ipywidgets

Вопрос:

Я использовал виджеты IPython в ноутбуке Jupyter, но расширение, от которого я зависел для включения режима приложения, не работает, поэтому я решил попробовать переписать все это на Python / Flask, но я понятия не имею, как и возможно ли это вообще, использовать виджеты IPython в представлениях Flask (особенно интерактивных)?

 import ipywidgets as widgets

items_layout = widgets.Layout(flex='1 1 auto',
                      width='400px', height='200px')

box_layout = widgets.Layout(display='flex',
                    flex_flow='row',
                    align_items='stretch',
                    width='100%')

instruction = widgets.Textarea(description="Command",
                               value = "",
                               layout = items_layout)

code = widgets.Textarea(description="Code",  
                        value = "",
                        layout = items_layout)

interactive_plot = widgets.interactive(run_code, trigger = instruction)

items = [interactive_plot, code]
box = widgets.Box(children=items, layout=box_layout)
display(box)
  

Ответ №1:

Ниже приведен ответ из вопроса репозитория ipywidgets на аналогичную тему.

Для того, чтобы виджеты что-то делали, они должны быть подключены к ядру для выполнения вычислений. Для этого требуется некоторый дополнительный код javascript и какой-нибудь сервер, предоставляющий ядро python. Пример web3 показывает один из способов сделать это.

Пример использования ipywidgets в веб-сервисе.

Однако вы не сможете писать код виджетов на Python. Все отображение виджетов выполняется с помощью кода JavaScript.