我有一個的QueryDict對象在Django如下:迭代通過表單數據
{'ratingname': ['Beginner', 'Professional'], 'sportname': ['2', '3']
其中映射是這樣的:
2 Beginner
3 Professional
和2,3運動表的主鍵值在models.py
:
class Sport(models.Model):
name = models.CharField(unique=True, max_length=255)
class SomeTable(models.Model):
sport = models.ForeignKey(Sport)
rating = models.CharField(max_length=255, null=True)
我這裏有一個問題,我怎麼通過迭代,這樣我可以將其保存爲
st = SomeTable(sport=sportValue, rating=ratingValue)
st.save()
我曾嘗試以下:
ratings = dict['ratingname']
sports = dict['sportname']
for s,i in enumerate(sports):
sport = Sport.objects.get(pk=sports[int(s[1])])
rate = SomeTable(sport=sport, rating=ratings[int(s)])
rate.save()
然而,這會在表格中輸入錯誤。例如,上面給出的數值是在我的表創建下列對象:
id: 1
sport: 2
rating: 'g'
如何解決這個問題,或者是有更好的方法做一些事情?
謝謝,彼得!這個解釋很有幫助。我不知道我哪裏錯了。 – Newtt 2015-02-17 23:43:53