2011-09-09 13 views
2

誰かが私のためにこの問題を解決できると願っています。イムは、ブログの記事は、私は、私は基本的なモデルがCheckboxSelectMultipleにdjangoモデルフォームの既存のデータを入力してください。

モデルとして定義されている

例えば購入猫のメディアのための電子メールをしたいし、特定のカテゴリIEのために提出された場合、ユーザーが電子メールを受け取るために登録することができ、通知アプリに取り組んで

基本的に、フォームは、上記のモデルで定義された多対多のフィールドカテゴリであるカテゴリを除外する必要があります。ユーザーが持っている、つまり

のModelForm

class BlogNotificationsForm(forms.ModelForm): 

    class Meta: 
     model = BlogNotifications 
     exclude = ('user', 'sites',) 
     widgets = { 
      'categories': forms.widgets.CheckboxSelectMultiple(), 
     } 

フォームが正しくチェックボックスとして多くの分野に多くのレンダリングが、何イム不思議さは、既存のデータと、それらのチェックボックスを移入取り掛かるする方法であるように形が見えますすでにメディアに関するブログの電子メールを受信することを選択した場合、ユーザーがページに戻ったときに、これらのチェックボックスを購入して計画するとチェックされたように見えるはずです。

すべてのヘルプは非常に多分あなたはクエリセットを設定することができますビューで

乾杯

+0

誰もがこの上に任意のアイデアを持っていますか? –

答えて

0

を見つけましたそれにBlogNotificationsモデルのインスタンスを渡していませんでした。だから、ビューのようなルックスに設定フォーム:私は、これは将来的に誰かを助けることを願ってい

blogForm = BlogNotificationsForm(instance=BlogNotifications.objects.get(user=request.user)) 

は、それは本当に私のドキュメントでその明確ではありませんでした!

1

を高く評価している..私はのModelForm上のクエリセットオプションを定義しようとしたが、それは私のために何もしていないようでしたこのように:modelForm Iをインスタンス化する場合

form = BlogNotificationsForm() 
form.fields["categories"].queryset = Categories.objects.all() 

私はこの例here

+0

ちょっとお返事ありがとうございます、これは私がすでに試したことの行に沿っていますが、これは私の使用事例ではうまくいきませんが、フォームフィールドのユーザーにはユーザーが既に設定したカテゴリを削除しますそれは理にかなっている、私は思うが、私は、手動でフォームをレンダリングして、データベースからオブジェクトをつかむことで既に選択していたカテゴリのボックスをチェックすることだと思う。 。私はまだそれを探しているので、私はどこかで答えを見つけることができればうれしい! –

関連する問題