0
我有型號:如何從ManyToMany字段獲取值?
class SettingField(models.Model):
name = models.CharField(max_length=200)
value = models.TextField(max_length=200)
[...]
class Setting(models.Model):
setting_type = models.CharField(max_length=1, choices=STYPES)
fields = models.ManyToManyField(SettingField, null=True)
[...]
和形式:
class SettingsForm(forms.Form):
login = forms.CharField(
required=True,
label=u'Login'
)
password = forms.CharField(
widget=forms.PasswordInput,
required=True,
label=u'Password'
)
鑑於我:
if request.method == 'POST':
form = SettingsForm(request.POST)
if form.is_valid():
setting = Setting()
setting.setting_type = 'd'
setting.save()
for ff in form.fields:
setting_field = SettingField()
setting_field.name = ff
setting_field.value = form.cleaned_data[ff]
setting_field.save()
setting.fields.add(setting_field)
該商店的依賴在窗體上的自定義字段設置。但現在我想要得到這些數據:
s_objs = Setting.objects.filter(setting_type='d')
logins = list()
for so in s_objs:
logins.append({
"login": so.fields.??? what here ???,
"password": so.fields.??? what here ???
})
怎麼辦?我可以使用循環和比較名稱,但也許有另一種方法。