Интегрировать приложение Python в сайт PHP - PullRequest
4 голосов
/ 15 декабря 2009

Это может звучать действительно безумно, но все же ...

Для нашего обновленного сайта проекта мы хотим интегрировать Trac (как браузер кода, вики-сайт разработчика и средство отслеживания проблем) в дизайн сайта. Это, конечно, сложно, так как Trac написан на Python, а наш сайт на PHP. Кто-нибудь здесь знает, как интегрировать заголовок и нижний колонтитул (PHP) в шаблон Trac (желательно без вызова - или, вернее, двух - для процесса PHP верхнего и нижнего колонтитула - из командной строки)?

Ответы [ 3 ]

1 голос
/ 15 декабря 2009

Абстракция - твой друг.

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

1 голос
/ 15 декабря 2009

Лучшим вариантом, вероятно, является (пере) написать верхний и нижний колонтитулы, используя python.

Если верхний и нижний колонтитулы относительно статичны, вы также можете сгенерировать их один раз с помощью php (или один раз каждые x минут) и включить их из файловой системы. (Возможно, вы уже подумали об этом и отклонили эту идею, потому что ваши сайты слишком динамичны, чтобы использовать эту опцию?)

Хотя я не очень рекомендую его, вы также можете использовать некоторую форму AJAX для загрузки частей страницы, и ничто не мешает вам загружать этот контент из системы на основе php. Это может сохранить все части динамическими. Ваши страницы, вероятно, будут выглядеть некрасиво при загрузке, и теперь вы генерируете больше обращений к серверу, чем нужно, но если это большой сайт, он может быть большим.

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

0 голосов
/ 15 декабря 2009

Ваш код Python будет иметь доступ к файлам cookie ваших пользователей. Шаблон был бы лучшим, но если у вас его нет (или заголовок / нижний колонтитул тривиально мал или что-то еще), вы можете просто перенести код верхнего и нижнего колонтитула PHP на Python, используя файлы cookie, которые уже существуют для запросить базу данных или все, что вам нужно сделать.

Если вы хотите сохранить свои ссылки для входа, регистрации и всего, что может быть в версии PHP, просто создайте ссылку на сторону PHP, а затем перенаправьте обратно на Trac, как только PHP выполнит свою работу.

...