Хороший веб-фреймворк Python для существующей консольной программы? - PullRequest
2 голосов
/ 12 марта 2012

Надеюсь, я спрашиваю на правом сайте StackExchange.

Я написал консольную программу на Python, на которую я хотел бы поместить веб-интерфейс, но мне трудно решить, какой веб-фреймворк выбрать. Мне не нужно много, но я хотел бы избежать ненужной работы, пытаясь использовать его. Мне не нужна база данных (пока), так что это для меня совсем не важно.

Я посмотрел на Django, Web2py, bottle.py и web.py.

Django и Web2py кажутся отличными, если бы я только начинал с нуля, но это не так, и кажется немного сложным для интеграции в существующий код.

bottle.py и web.py, похоже, могут сработать, но они настолько просты, что я надеюсь, что есть что-то еще, что не потребует столько шаблонов, как кажется. делаем.

Я не просто хочу сделать точную копию интерфейса консоли в браузере, но хочу настроить его для веб-интерфейса, поэтому я не обязательно ищу что-то, что просто обернет консольное приложение в веб-интерфейс (хотя это тоже было бы интересно)

Ответы [ 4 ]

2 голосов
/ 12 марта 2012

Благодаря продолжению , которое реализовано в фреймворке Nagare , вы можете разработать веб-приложение, например консольное или настольное приложение с пользовательским интерфейсом: поместите код консоли в component.Task,затем создайте несколько компонентов для каждого взаимодействия, то есть несколько представлений, которые показывают данные, которые вы печатаете в своем консольном приложении, и получаете некоторый пользовательский ввод обратно.Затем платформа Nagare позаботится обо всем остальном: не нужно объявлять URL-адреса, чтобы передавать контекст от страницы к следующей ...

2 голосов
/ 12 марта 2012

Я предлагаю Джанго. Я использовал Django как для простых, в основном статических сайтов, так и для сайтов с большим количеством форм, и я не могу сказать, что Django накладывает какие-либо ограничения или вынуждает вас писать сотни LoC даже для простых вещей. Вместо этого вы получаете автоматически сгенерированный административный интерфейс , встроенный ORM , инструменты интернационализации и многие другие, Таким образом, у вас есть большие возможности для расширения функциональности вашего приложения. Кроме того, в нем есть такая важная вещь, как актуальная документация для каждого модуля.

Учебное пособие занимает несколько часов и дает достаточно информации для начала разработки полноценных сайтов.

1 голос
/ 12 марта 2012

Это какая-то сложная проблема ... Лично я не вижу в web.py столько всего "базового", как вы говорите. Должно быть действительно легко обернуть ваш код в некоторые классы с помощью функций GET и POST, и все будет сделано.

Кроме того, Django можно «минимизировать» как бы: Как написать однофайловое приложение Django? - это целый разговор об этом.

Я бы сказал, что для вас слишком "базово"? Вы упомянули «шаблонизацию», но как бы что-то волшебное шаблон для вас? Существуют шаблоны с открытым исходным кодом для веб-приложений, на ум приходят такие вещи, как твиттер-загрузка Twitter, и это готовый шаблон для вашего следующего веб-приложения. Кроме того, YUI и dojo делают подобные вещи (они имеют совершенно разную направленность, поскольку они представляют собой полноценные JS-фреймворки).

Тем не менее, существует совершенно новый проект под названием 'лопата' (здесь): https://github.com/seomoz/shovel

Я еще не использовал его, но, похоже, он выполняет команды в веб-интерфейсе для вас. Вы сказали, что это будет «интересно».

Лично я использую web.py для всех своих веб-материалов.

0 голосов
/ 12 марта 2012

PyQT может быть полезен, если вы хотите его реализовать, для цитирования на веб-сайте RiverBank PyQT, указанном ниже:

"Модуль QtWebKit реализует движок веб-браузера на основе движка браузера с открытым исходным кодом WebKit, используемогоSafari от Apple. Он позволяет публиковать методы и свойства объектов Python и отображаться в виде объектов JavaScript для сценариев, встроенных в HTML-страницы. "

Источник: http://www.riverbankcomputing.co.uk/software/pyqt/intro

Кроме того, не даватьНадеюсь, что это не поможет, так как есть также «Пижама», которая очень удобна!Вот краткое описание этого:

"Пижама - это многофункциональная платформа для разработки интернет-приложений (RIA) как для Web, так и для настольных компьютеров.

Она содержит компилятор Python-to-Javascript, AJAXфреймворк и API набора виджетов. Пижама начала свою жизнь как порт Python для Google Web Toolkit, компилятора Java-to-Javascript. Прочитайте часто задаваемые вопросы и список возможностей. "

источник: http://pyjs.org

найдено по адресу: google.com

Я бы сказал, что когда вы всегда хотите узнать, что лучше всего использовать, задайте свой вопрос в Google, посмотрите несколько сайтов и сравните лучшие результаты.из нескольких сайтов на ваш вопрос, также, это действительно зависит от того, что вам нужно, и что ваша сильная рука играет лучше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...