2011-06-09 54 views
2

私はちょっとしたテクノロジーのスタートアップのために働きます。私たちのメインサイトは、PHPベースのCMSであるCMS Drupal上に構築されています。しかし、私はPythonをいくつか知っており、Webアプリケーションを開発してWebサイトと統合し、ユーザーがそれらとやり取りできるようにしたいと考えています。PythonをPHPに埋め込むことは可能ですか?

どうすればいいですか?誰も経験や知識を持っていますか? Pythonを使用したり、PHPやDrupalからPythonを呼び出すことを可能にする特定のモジュール/スクリプト/ etc?

+2

おそらく、少しPHPを学習したほうが良いと思います。 – ceejayoz

+0

ハハ、Ceejayoz。私は最終的には、私は自分自身をペースしようとしている。私は私自身のプロジェクトのためにPythonを望んでいました(私は自分自身を教えていました)が、私の上司がプログラミング知識のほんの少ししか知りませんでしたが、彼はビジネスのためのプロジェクトに取り組むように励ましてくれました。私はすぐにPHPを学ぶことなく、できるだけ早くそれを実現しようとしています。 –

答えて

2

でのDrupalを統合行うにはいくつかの異なる方法がありますおそらく、あなたはリモートサーバとやり取りするのと同じように、おそらくservices moduleをDrupalにインストールし、PythonアプリケーションからHTTP経由で呼び出しを行うことが最善の方法です。

いくつかの他のオプション:

  • のDrupalのデータベース構造としてはむしろ危険なのDrupalのデータベースと直接対話は、モジュールのアップグレード、あるいは構成の変更で大幅に変更することができます。
  • なし機能統合かかわらず、あなたのDrupalのデザインを与えるDrupalのページのIFRAME内の場所Pythonアプリケーションを、。 DrupalのとPythonの間でクライアント側仲介人として
  • JavaScriptを使用。
  • のDrupalとPythonの間、サーバー側の中間男として使用するコマンドラインを。 Drushはここで便利です。
+0

ありがとう、それはかなりのオプションです! –

4

あなたはWebアプリケーションは何も開発されていない場合は、Pythonを使用していないのDrupalが使用するサブドメインやパスからそれにアクセスすることからあなたを停止し、ちょうどそれにWebサーバのポイントを持っています。例:

http://mainsite.com/ <- drupal 
http://app.mainsite.com <- python web app 
http://mainsite.com/python/ <- python web app 

これは、ほとんどのWebサーバーではかなり簡単です。あなたは素敵なORMでのPythonを使用して、既存のデータベースと対話することができます

python manage.py inspect.db > models.py 

Djangoはこのために特に適しかもしれないが、それはcan inspect live databases, and generate models for you便利な機能を持っています。

あなたは文字通り、PHPページからのPythonを呼び出す必要がある場合、あなたは高速IPCまたはTCP通信にzeromqを使用、または単純なREST APIを構築することができますが、その他

+0

質問は、計画されているWebアプリがDrupalで管理されているコンテンツと実際にやりとりする必要があるかどうか、もしそうなら、どのように、どの程度まで、 –

関連する問題