2017-04-08 59 views
1

下面是我的形式設置(所有的字段是相同的):Django的形式添加字符,當我編輯的細節

class AddColourForm(forms.Form): 

    colour = forms.CharField(
     widget=TextInput(attrs={'class':'form-control'}), 
     max_length=100, 
     required=False, 
     label = "Colour:", 
    ) 

這是我的觀點:

if form.is_valid(): 
    selected_colour.code = form.cleaned_data['code'], 
    selected_colour.name = form.cleaned_data['colour'], 
    selected_colour.save() 

這裏當它進入數據庫會發生什麼:

(u'red」,)(U '#FF0000')

我已經嘗試在保存之前在已清理的數據中添加unicode()包裝,但這不起作用。

有沒有人有任何其他建議?

+0

我想你想要一個24位無符號值,而不是一個字符串u'#ff0000' –

回答

4

嘗試像這樣在每行後取出逗號(他們是沒有必要):

selected_colour.code = form.cleaned_data['code'] 
selected_colour.name = form.cleaned_data['colour'] 
selected_colour.save() 

它看起來像逗號將你的數據到一個列表。

+2

除了是必要的,@ drew2是在數據庫中保存一個元組字符串表示。 – DRC

+2

是的!這一直奏效。這是我自己的錯,從代碼複製到db添加一個新的顏色,然後改變它。我將來會記住這一點。謝謝!!!!! –

相關問題