0

次のような 2 つのフィールドとボタンを備えた Python 言語を使用して、単純なログイン ページを作成する必要があります。

Username, Password, Login

私はいくつかの美しいPythonフレームワークがあることを知っています

Django, Grok, WebPy, TurboGears

Python を使用した Web 開発をサポートしていますが、私のものは 3 つの画面 (ページ) のみで構成される基本的な要件です。

  • 1 ページ目 - ログイン ページ (ログイン ボタンをクリックすると 2 ページ目にリダイレクトされます)
  • 2 ページ目 - 新しいレコードを追加するためのオプションを含む、リスト形式のレコードを含むページ ([レコードの追加] ボタンをクリックすると、3 ページ目にリダイレクトされます)
  • 3 ページ目 - 2 ページ目のリストのレコードとして保存されるフィールドを含むページ (詳細を入力して [送信] をクリックした後)

そのため、フレームワークを使用せずにPythonを使用して上記の機能を開発することにしました。これにより、柔軟性があり、独自のコードを書くことができます。

  1. フレームワークを使用せずに Python を使用してログイン ページを作成することはできますか?

  2. 私は Web サービスに携わったことがなく、Python での Web 開発の基本を知りません。

  3. 可能であれば、Python を使用してログイン ページを作成し、上記の機能を実現する方法の例を教えていただけますか?

4

2 に答える 2

2

まず、フレームワークなしで物事を行う方法を学ぶのは良いことですが、教育目的以外でこれを行う場合、「私の要件は単純すぎてフレームワークを気にすることはできません」と言うのはおそらく間違いです. あなたが説明することは、スペクトルのより単純な端にありますが、おそらくあなたが見過ごしているいくつかの複雑さをすでに見ることができます.

とにかく、3 つのページを実装するには、次のものが必要です。

  • ウェブサーバー
  • 2 つの静的 HTML ファイル
  • 2 ページ目の GET、1 ページ目と 3 ページ目の POST の Python ハンドラ
  • ストレージ (フラット ファイルまたはデータベースのいずれか)

開始するには、 A Simple Python CGI Server Tutorialを参照してください。詳細については、TutorialsPoint: Python - CGI Programmingを参照してください。

HTML フォームは、フォームごとに Python から提供している URL を取得して設定するmethod="POST"だけで済みます。actionPOST ハンドラーは、必要なことを実行してから、302 リダイレクトを提供する必要があります。

Python Web 開発の基本を知らない場合は、手がいっぱいになるので、おそらくシングル ユーザー フラット ファイル システムから始める必要があります。今のところ、それをメモリに保存することでうまくいくかもしれません。その後、それが停止した場合は、sqlite を試してください。Webサーバーの設定も面倒なので、そのままにしておくことができればBaseHTTPServer.

最後に、レコードを別の python エンドポイントにロードし、それぞれに HTML を作成し、HTML を囲む大きな文字列でそれを平手打ちし、その子犬にサービスを提供します。

于 2012-10-05T08:17:29.987 に答える
0

あなたの要件は非常に簡単です。人々はフラスコやボトルのようなマイクロ フレームワークを提案するかもしれませんが、Django を試して、Django 管理パネルを見てください。Django の管理機能を使用して、要件を満たすことができると思います。

更新しました

これを見てくださいhttp://docs.python.org/howto/webservers.html

フレームワークがなく、CGI をいじりたくない場合は、http://webob.org/を参照してください。

于 2012-10-05T07:32:21.790 に答える