2013-05-06 31 views
0

我有下面的表格,我想用我準備的自動完成小部件來覆蓋多個文件夾 。覆蓋ManyToManyField

class AutoCompleteForeignKeyWidget(forms.TextInput): 
    input_type = 'text' 


class FooForm(forms.ModelForm): 

    regions = forms.CharField(widget=AutoCompleteForeignKeyWidget(attrs={ 
     'class': 'regions', 'placeholder': 'Type Region', 
     'autocomplete': 'off' 
    }), required=True) 

    class Meta: 
     model = Hotel 
     exclude = ('regions') 

但是這是不成熟的。我有一個完整性錯誤DETAIL: Key (region_id)=(0) is not present in table "destinations_region".有沒有辦法覆蓋manytomanyfield

回答

0

糾正我,如果我錯了,但這不能工作,因爲瀏覽器將輸入的內容作爲表單字段值發送。

這意味着django會收到region ='某個區域名稱'。但是Django ManyToManyField是用於處理主鍵列表,如[1,2,3],其中1是第一個選定區域的PK,依此類推。

我建議你使用一個autocomplete app這會讓它變得更容易。