Pyforms AttributeError: у объекта 'module' нет атрибута 'start_app'

После установки pyforms на мой Raspberry Pi 3 я попытался запустить пример, который я нашел на readthedocs, но приложение выдает AttributeError (Я пробовал оба python2 и python3)


Код Python

import pyforms
from   pyforms          import BaseWidget
from   pyforms.Controls import ControlText
from   pyforms.Controls import ControlButton

class SimpleExample1(BaseWidget):

    def __init__(self):
        super(SimpleExample1,self).__init__('Simple example 1')

        #Definition of the forms fields
        self._firstname     = ControlText('First name', 'Default value')
        self._middlename    = ControlText('Middle name')
        self._lastname      = ControlText('Lastname name')
        self._fullname      = ControlText('Full name')
        self._button        = ControlButton('Press this button')


#Execute the application
if __name__ == "__main__":   pyforms.start_app( SimpleExample1 )

Ошибка:

Traceback (most recent call last):
  File "PiControl.py", line 20, in <module>
    if __name__ == "__main__":   pyforms.start_app( SimpleExample1 )
AttributeError: ‘module’ object has no attribute ‘start_app’


Редактировать:

Я пытался импортировать start_app вручную с

from pyforms.gui.standaloneManager import start_app

но потом я получаю другой ImportError:

Traceback (most recent call last):
  File "PiControl.py", line 4, in <module>
    from   pyforms.gui.standaloneManager import start_app
ImportError: cannot import name 'start_app'

2 ответа

Решение

Это очень странное поведение и, возможно, означает, что ваша установка не работает. Попробуйте установить последние версии из репозитория:

pip install -U git+https://github.com/UmSenhorQualquer/pyforms.git 
pip install -U git+https://github.com/UmSenhorQualquer/pysettings.git
pip install -U git+https://bitbucket.org/fchampalimaud/logging-bootstrap.git

Прочитав сайт GitHub Pyforms, я узнал, что это веб-фреймворк. Поэтому я думаю, что это будет похоже на другие веб-фреймворки. И ошибка говорит о том, что "модуль" не имеет метода "start_app", поэтому я думаю, что вы, возможно, не объявили экземпляр приложения. "Запускаемый_приложение" должен принадлежать экземпляру веб-приложения. Может быть, это неправильно, потому что я не читал документы.

Другие вопросы по тегам