2012-01-17 8 views
0

私はForeignKeysとManyToManyオブジェクトの両方を参照する基本モデルを持っています。ビューのIDを取得して変更を加える「編集」テストでは、問題に遭遇しました。他の誰かがより洗練された回避策を見つけた場合、私は不思議です。私はDjangoテスト - 初期値を取得して返す

client = Client() 
    response = client.get(reverse("floorplan_update", kwargs={'pk': floorplan.id})) 

    data = response.context['form'].initial 

    # Ideally you should be able to do this.. 
    response = client.post(reverse("floorplan_update", kwargs={'pk': floorplan.id}), 
          data=data, follow=True) 

正しい道を私を始めthisポストを見つけましたしかし、あなたはこれを行うことはできません。あなたはFKのか、M2Mのあなたが最初にこの醜さをする必要がありを持っている場合には...

client = Client() 
    response = client.get(reverse("floorplan_update", kwargs={'pk': floorplan.id})) 

    data = response.context['form'].initial 

    # Ugliness ensues.. 
    data['document'] = open(__file__) 
    data['company']= data['company'].id 
    data['target']= data['target'].id 

    # Only now can you post.. 

    response = client.post(reverse("floorplan_update", kwargs={'pk': floorplan.id}), 
          data=data, follow=True) 

は、他の誰がこのに走ったのか、これに対処するための良い方法はありますか?

答えて

1

わからない、しかし、あなたの代わりにこれを試すことができます。

data = response.context['form'].instance.__dict__ 
+0

確かにあなたの道のほとんどを得ることをです。ニース。 – rh0dium

関連する問題