Django从数组中形成数据

时间:2014-07-10 00:49:39

标签: django django-forms

如果名称字段留空,则使用颜色填充汽车的名称字段。

我的问题是颜色字段是一个ManyToMany字段,因此它返回数组 - 它返回如下内容:

[<car_color:_red>] Car

我希望它返回数组中的第一个值,如下所示:

Red Car

models.py

class car(models.Model):
    name = models.CharField()
    color = models.ManyToManyField(Colors)

forms.py

class AddCar(forms.Form):
    ...
    def clean(self):
        cleaned_data = super(AddCar, self).clean()
        name = cleaned_data.get('name')
        new_name = '%s Car' % (cleaned_data.get('car_color'))
        if not name:
            self.cleaned_data['name'] = new_name
        return cleaned_data

1 个答案:

答案 0 :(得分:0)

我通过使用循环获得颜色来解决这个问题。

if not name:
    for color in cleaned_data.get('marker_color'):
        self.cleaned_data['name'] = '%s Trail' % (color)