1

PyramidFrameworkを使用してAptanaでデバッグモードを開始するのに問題があります。

私が使用しているプラ​​ットフォームは、Python3を実行しているDebian/Linuxです。

これらは、Pyramidプロジェクトを作成して実行するために使用するコマンドです。(ソース

1. pcreate -s starter MyProject      //create project
2. python3.2 setup.py develop        //setup develop mode
3. pserve development.ini            //run application

3番目のステップを実行すると、ターミナルにこれが表示され、ブラウザーを開いてサイトを表示できます。

Starting server in PID 15507.
serving on "http://0.0.0.0:6543"

コードをステップ実行できるように、デバッガーを実行してブレークポイントを設定するにはどうすればよいですか。

4

3 に答える 3

2

python debuggerを調べることをお勧めします。Pyramid アプリケーションをデバッグするための例もあります。これも役立つかもしれません: Debug Pylons application through Eclipse

于 2012-05-24T09:47:17.460 に答える
0

私は Xubuntu/linux を使用しています - python3 私は eclipse-pydev を使用しています。これが eclipse を介してデバッグする方法です。プロジェクト フォルダー (*MyProject) 内で app.py を使用します。

app.py

from MyProject import main

if __name__ == '__main__':
    settings = {
    'pyramid.reload_templates': 'true',
    'pyramid.debug_authorization': 'false',
    'pyramid.debug_notfound': 'false',
    'pyramid.debug_routematch': 'false',
    'pyramid.default_locale_name': 'en'
    }
    ip="127.0.0.1"
    port="6543"
    app = main(None,settings)

#For waitress
    from waitress import serve
    print("Starting Server on http://{0}:{1}".format(ip,port))    
    serve(app,host=ip,port=port,threads=50)

ブレークポイントを配置し(たとえば、app.pyに配置してコードの移動を確認し、views.py-returnステートメントに配置して、別のルートに移動したときにトリガーされるのを確認します)、eclipse-debug pythonアプリのDEBUGアイコンをクリックします.py.、Eclipse はデバッグ パースペクティブ ウィンドウを開くように要求し、Eclipse コンソールが表示されます。

pydev debugger: starting (pid: 9380)

eclipse でデバッグ パースペクティブ ウィンドウを開くと、トリガーされたブレークポイントがデバッグ ウィンドウに表示されます。

使っていた、

 pserve development.ini

しかし、上記のスクリプトを使用してEclipseからWebアプリを簡単に起動できると感じました。コンソール(Eclipse)を使用してserver-localhostの実行を簡単に停止できます。

于 2014-12-10T12:42:13.660 に答える
0

これは、ウェイトレス (Web アプリケーションを実行しているローカル サーバー) と Aptana/pydev/Eclipse とのやり取りに関する問題です (または少なくともそうでした)。

Python 2.7 の場合、簡単な答えは、ローカル サーバーとして代わりに paster を使用することです。これは私が成功したことです。残念ながら、Paster はまだ Python 3 に移植されていないため、Python 3 が必要な場合は残念です。

ここで詳しく説明されているように、これは現在修正されている可能性があります。また、3.x の場合は役に立ちませんが、paster を機能させる方法についての詳細な説明もあります。

于 2012-06-27T20:06:35.557 に答える