2017-03-07 7 views
1

私はPythonライブラリujsonを使用してPythonでOdooモジュールを作成しました。 開発用サーバーにこのライブラリをpip install ujsonで手動でインストールしました。外部Pythonライブラリを持つOdooカスタムモジュール

ライブサーバーにモジュールをインストールします。 Odooモジュールに何かインストールしたらujsonライブラリをインストールするように教えてもらえますか?だから私はアドオンのパスにモジュールを追加して、Odoo Web Interface経由でインストールするだけです。

これを自動化するもう一つの理由は、自分のカスタムモジュールを共有したいので、他の人が自分のサーバーに手動でライブラリをインストールする必要がないからです。

私のモジュールをそのように設定する方法はありますか?または、モジュールにライブラリのディレクトリを含めるだけですか?

答えて

2

@ Walid Mashalと@CZoellnerの助けていただきありがとうございます。どちらも正しい方向に向いています。

私は私のモジュールの__init__.pyに追加し、次のコードで、今このタスクを解決:

import pip 
try: 
    import ujson 
except ImportError: 
    print('\n There was no such module named -ujson- installed') 
    print('xxxxxxxxxxxxxxxx installing ujson xxxxxxxxxxxxxx') 
    pip.main(['install', 'ujson']) 
+0

cheersss !!!!!!! –

0

以下はレポートはwkhtmltopdfをインストールするreport.py(odoo_root_folder /アドオン/レポート/モデル/ report.py)内のベースアドオンでodooベースモジュールに使用されるコードです。

from openerp.tools.misc import find_in_path 
import subprocess 

def _get_wkhtmltopdf_bin(): 
    return find_in_path('wkhtmltopdf') 

try: 
    process = subprocess.Popen([_get_wkhtmltopdf_bin(), '--version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) 
except (OSError, IOError): 
    _logger.info('You need Wkhtmltopdf to print a pdf version of the reports.') 

基本的に、あなたはあなたの.pyファイルのいずれかでライブラリーを実行し、それをインストールし、そのコードが含まれますいくつかのPythonコードを見つける必要があり、それはそれを行う必要があります。

+1

私は取付部を実装する方法は非常にわかりません。私はこれを試してみる必要があります。ご協力いただきありがとうございます。私が成功すれば私はあなたに知らせるでしょう。 – IstaLibera

2

あなたは試す-除いすべき輸入odooサーバーの起動時に問題を処理するために:

try: 
    from external_dependency import ClassA 
except ImportError: 
    pass 

そして、あなたのモジュールの他のユーザーのための、あなたのモジュールマニフェスト(V9と少ないにexternal_dependenciesを拡張:__openerp__.py。 V10の+:__manifest__.py)、インストール時に警告を促すメッセージが表示されます:

"external_dependencies": { 
    'python': ['external_dependency'] 
}, 

ビッグおかげイヴァンに行き、彼のBlog

+0

チップをありがとう。マニフェストに外部依存関係を含めると、はるかに優れたエラーメッセージが生成されます。しかし、私は当初、依存するPythonライブラリを自動的にインストールしたいと思っていました。 – IstaLibera

+0

はい、私はあなたに最初の要件を理解しましたが、私はより良い解決策を持っておらず、私はOdooにすぐに使えるソリューションはないと確信しています。 – CZoellner

関連する問題