2016-07-20 16 views
0

私はいくつかのモデルのメソッドを呼び出すCBV持つ(マシン上でいくつかのプロセスを実行し、データを取得するために、他のウェブサイトへの接続)Django getで送信された投稿のデータを取得する方法は?

class Edit(View: 
    def get(self, request): 
     object = Model.objects.get() 
     object.foo() 
     return object 

    def post(self, request): 
     ...how can I get the object here without looking it 
     up and calling the method again 

私はPOSTメソッドで再びオブジェクトを取得したいが、私私はもう一度プロセスを実行したくないので、もう一度呼びたくはありません。この情報を入手する方法はありますか?テンプレートにテンプレートとして渡されましたcontext

+0

それはあなたがその返されたオブジェクトを持っているデータの種類によって異なります。辞書(doc reference)よう要求、位置url引数リスト、名前のURLのarugments:

data = request.POST # python dictionary-like 

ビューは、この順序で引数を取得します。データがユーザー固有のものであれば、セッションhttps://docs.djangoproject.com/en/1.10/topics/http/sessions/を使用できます。そうでなければ、Djangoのキャッシュhttps://docs.djangoprojectを使用できます。 com/ja/1.10/topics/cache/ – mastazi

+0

「私はもう一度プロセスを実行したくない」とはどういう意味ですか?これらの2つのメソッドは異なるタイプのリクエストを扱うためのものです。 'get'は' GET'リクエストに対してのみ実行され、 'POST'は' POST'リクエストに対して実行されます。 – solarissmoke

答えて

1

リクエスト属性(reference)になります。

def post(self, request, *args, **kwargs): 
    post_data = request.post 
    get_data = request.GET 
    non_named_url_argument_list = args 
    named_url_argument_dict = kwargs 
+0

私はget要求を介して送信されたコンテキストを取得する方法はまだわかりません。私は私の書式で投稿要求に渡された私のものを見ますが、私がrequest.GET.items()を印刷すると、私はそこにはほとんど何も表示されません、私は文脈に渡された情報は間違いありません。 – deltaskelta

+0

私は答え、それは助けるかもしれない。 – DurgaDatta

+0

ahhはい私は間違った種類のフォームを使用していました。 – deltaskelta

関連する問題