0

私はこのクラスCreateViewを使用して、モデルlocation.modelに新しい場所を追加します。それは座標と小さな記述を持つ特定の場所を記述する。Django GCBV CreateView、form.Formsのように "localize = False"を設定

私はI18N設定をTrueに設定しているので、decimalFieldはコンマ区切りの入力を使用します。彼らは調整されているので、私は "。"セパレータとして。

forms.DecimalField(max_digits=16, decimal_places=14, localize=False) 

このようなオプションがCreateViewにあるかどうかは、フォームビューに書き換えるのではなく、現在のビューを使用することです。

マイ設定

#settings.py 
LANGUAGE_CODE = 'nl' 
TIME_ZONE = 'Europe/Amsterdam' 
USE_I18N = True 
USE_L10N = True 

他のソリューションは、私は一般的なクラスベースのビューを使用するようにしたいと思いよりも、他の素晴らしいことです。

答えて

2

次に、あなたのビューを作成してそのフォームクラスを使用し、あなたのDecimalField

class MyForm(forms.ModelForm): 
    my_field = forms.DecimalField(max_digits=16, decimal_places=14, localize=False) 

    class Meta: 
     model = MyModel 
     fields = ['my_field', ...] 

を使用するモデルのフォームを作成します。答えを

class MyCreateView(CreateView): 
    form_class = MyForm 
    ... 
+0

おかげで、残念ながらそれが動作していないようですが私の終わり。 "localize = False"のフォームにdecimalfieldを設定しても、モデルに入れるセパレータとして "、"が使用されます。私はここに何かを逃していますか –

+0

私はあなたが与えた情報からうまくいかない理由を伝えられません。 – Alasdair

関連する問題