将 Python 应用程序集成到 PHP 站点

发布于 2024-08-14 07:22:03 字数 217 浏览 3 评论 0原文

这可能听起来真的很疯狂,但仍然......

对于我们改造后的项目网站,我们希望将 Trac(作为代码浏览器、开发人员 wiki 和问题跟踪器)集成到网站设计中。当然,这很困难,因为 Trac 是用 Python 编写的,而我们的网站是用 PHP 编写的。这里有人知道如何将页眉和页脚 (PHP) 集成到 Trac 模板中吗(最好不要从命令行调用一个 - 或者更确切地说两个页眉和页脚 - PHP 进程)?

This might sound really crazy, but still...

For our revamped project site, we want to integrate Trac (as code browser, developer wiki and issue tracker) into the site design. That is, of course, difficult, since Trac is written in Python and our site in PHP. Does anybody here know a way how to integrate a header and footer (PHP) into the Trac template (preferrably without invoking a - or rather two for header and footer - PHP process from the command line)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

晨光如昨 2024-08-21 07:22:03

最好的选择可能是使用 python (重新)编写页眉和页脚。

如果页眉和页脚相对静态,您也可以使用 php 生成一次(或每 x 分钟一次)并从文件系统中包含它们。 (您可能已经考虑过这一点并放弃了这个想法,因为您的网站太动态而无法使用此选项?)

虽然我并不真正推荐它,但您也可以使用某种形式的 AJAX 来加载页面的某些部分,并且没有什么可以阻止您从基于 php 的系统加载此内容。这可以使所有部分保持动态。您的页面在加载时可能看起来很丑陋,并且您现在在服务器上生成的点击量超出了所需的数量,但如果它是一个大网站,那么这可能会很大。

警告:如果您在两个系统上都有用户登录,您可能会遇到人们只登录到您站点的一半的问题。

The best option probably is to (re)write the header and footer using python.

If the header and footer are relatively static you can also generate them once using php (or once every x minutes) and include them from the filesystem. (You probably already thought about this and dismissed the idea because your sites are too dynamic to use this option?)

While I would not really recommend it you could also use some form of AJAX to load parts of the page, and nothing prevents you from loading this content from a php based system. That could keep all parts dynamic. Your pages will probably look ugly while loading, and you now generate more hits on the server than needed, but if it is nog a big site this might be a big.

Warning: If you have user logins on both systems you will probably run into problems with people only being logged in to half of your site.

旧故 2024-08-21 07:22:03

抽象是你的朋友。

如果可能的话,使用简单的模板语言将页眉和页脚中的原始 HTML 与 PHP 隔离,并为模板语言编写 Python 和 PHP 接口。或者,重用其他人已经完成的工作。 此图表显示模板属性语言 (TAL) 支持 Python 和 PHP5。

Abstraction is your friend.

Isolate the raw HTML from your PHP in the header and footer in a simple templating language, if possible, and write Python and PHP interfaces to your templating language. Or, reuse the work that other people have done. This chart shows that Template Attribute Language (TAL) has Python and PHP5 support.

情深如许 2024-08-21 07:22:03

您的 Python 代码将有权访问您用户的 cookie。最好有一个模板,但如果您没有可用的模板(或者页眉/页脚非常小,或者其他什么),您可以简单地将 PHP 页眉和页脚代码移植到 Python,使用已经存在的 cookie查询数据库或任何你需要做的事情。

如果您想保留用于登录、注册以及 PHP 版本中的其他内容的链接,只需链接到 PHP 端,然后在 PHP 完成其工作后重定向回 Trac。

Your Python code will have access to your users' cookies. A template would be best, but if you don't have one available (or the header/footer are trivially small, or whatever), you can simply port the PHP header and footer code to Python, using the cookies that are already there to query the database or whatever you need to do.

If you want to retain your links for logging in, registering, and whatever else might be in the PHP version, simply link to the PHP side, then redirect back to Trac once PHP's done its job.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文