2017-02-13 7 views
1

これは私が私のモデルはそれとして保存する必要があり辞書を反復してpython2.7でデータベースに保存するには?

class Example(models.Model): 
    district = models.CharField(max_length=50,**optional) 
    taluk = models.CharField(max_length=20,**optional) 

で、アイテムを反復処理し、データベースに保存したい私の辞書

{u'krishna': [u'vijayawada', u'gudivada', u'avanigada']} 

です:

----------------------------- 
|district |   taluk | 
|-----------|--------------- | 
|krishna | vijayawada  |   
|-----------|----------------| 
|krishna | gudivada  | 
|----------------------------|   
|krishna | avanigada  | 
------------------------------ 

答えて

0

これがあなたのために動作します: -

for districtName in places.keys(): 
    for talukName in places[districtName]: 
     print districtName,talukName #Try to print it 
     addData = Example.objects.create(district=districtName,taluk=talukName) 
     addData.save() 
+0

機能していない、talukは、値の個々の文字を保存しているたとえば、ヴィジャヤワーダはtalukに保管しなければならないが、それは一列にVとして保存されて申し訳ありませんが、私第2行目にある。行ごとに文字を保存する – praveenjp

+0

今更新されたものを実行して、それが何を印刷しているかを確認してください。 –

+0

はい、Python 3では、その動作が、私はPython 2.7のみに基づいてほしい – praveenjp

1
for key in dict: 
    for value in dict[key]: 
     example = Example() 
     example.district = key 
     example.taluk = value 
     example.save() 
2

あなたを次のようなことができます:

form models import Example 

places = {u'krishna': [u'vijayawada', u'gudivada', u'avanigada']} 

for district in places: 
    for taluk in district: 
     e = Example(district=district, taluk=taluk) 
     e.save() 
関連する問題