2012-03-16 5 views
2

私は竜巻、Pythonを使用して小さなWebアプリケーションを作成しています。以下は私のコードです。私は、2つのテキストフィールドを持つpythonのhtmlフォームを持っています、今私は入力フォームを取得し、redisに格納したいと思います。
私の質問 -竜巻のpythonを使用してユーザーの入力データを赤字に保存する方法

  1. にはどうすれば接続が私のPythonスクリプトからRedisのために作るのですか?
  2. 入力したユーザー入力をレディスに保存するにはどうすればよいですか?

例コードは高く評価されます。

import tornado.httpserver 
import tornado.ioloop 
import tornado.options 
import tornado.web 

from tornado.options import define, options 

define("port", default=8888, help="run on the given port", type=int) 

class MainHandler(tornado.web.RequestHandler): 
    def get(self): 
     self.write('<html><body><form action="/" method="post">' 
      '<p>Please enter the Key Value pair for redis.</p>' 
        '<input type="text" **name="key"** value="type key here">' 
      '<input type="text" **name="value"** value="type value here">' 
        '<input type="submit" value="Submit Key Value">' 
        '</form></body></html>') 


def main(): 
    tornado.options.parse_command_line() 
    application = tornado.web.Application([ 
     (r"/", MainHandler), 
    ]) 
    http_server = tornado.httpserver.HTTPServer(application) 
    http_server.listen(options.port) 
    tornado.ioloop.IOLoop.instance().start() 


if __name__ == "__main__": 
    main() 
+0

redisに接続するpython redisモジュール、メソッドのredisドキュメント、POST処理に関する竜巻のドキュメントはどうですか? –

答えて

2

第1の質問では、pythonのredisモジュールを使用します。

まず、sudo easy_install redisからredisをインストールするか、PY-のRedisのgithub page上のドキュメンテーションがあります

セットアップスクリプトからインストールするsource codeを取得していますが、単純なもので開始したい場合は、単にコードのこれらの2行を書きます:

第二の問題については
import redis 
# if your redis was implemented properly and defaultly (eg. on 6379 port), 
# `db` you get can work now. 
db = redis.StrictRedis() 

は、MainHandlerにHTTP POST処理方法を記述します。

PS。 から容易に得ることができるように、ハンドラクラスに先立って属性としてdbを設定することができます。

+0

ありがとうございました。 – sue123456

+0

この回答を受け入れるか、タイムリーに受け入れない場合はコミュニティのパフォーマンスには不向きです。 [this](http://meta.stackexchange.com/questions/16721/how-does-accept-rate-work)を参照してください。 – Reorx

関連する問題