2012-01-09 16 views
1

他の質問を調べるのに少し時間を費やしましたが、実装のいくつかを本当に理解できません。私はdjangoを使ってダミーの本レンタルウェブアプリを作っています。私はdjango形式を使用してそれを選択するチェックボックスで書籍のリストを表示したい。djangoの動的ラベルをアイテムリストから作成する

別のモデルで作成された書籍のタイトルからチェックボックスのラベルを動的に生成する方法はありますか?

例ブックモデル:

class Book(models.Model): 
    title = models.CharField(max_length=100) 
    . 
    . 
    . 
    pub_date = models.DateField() 

レンタルフォーム:

class RentalForm(forms.Form): 
    name = forms.BooleanField(label = "label") 
    . 
    . 

私は、フォームを動的にラベルフィールドへの本のタイトルを挿入したいが、私は方法がわかりません。

答えて

0

はModelMultipleChoiceFieldとCheckboxSelectMultipleウィジェットに見て:

from django.forms.fields import MultipleChoiceField 
from django.forms.widgets import CheckboxSelectMultiple 

class RentalForm(forms.Form): 
    books = forms.ModelMultipleChoiceField(queryset=Book.objects.all(), 
     widget=CheckboxSelectMultiple) 

私はそれが次のチェックボックスに「ラベル」を表示する__unicode__を使用していますね。これを処理するには、.save()またはPOSTリクエストにいくつかのロジックが必要ですが、動作するはずです。

true BooleanFieldsが必要な場合は、RentalFormで__init __()を使用して何かを実行し、その場ですべてのBooleanFieldを作成する必要があります。

+0

ありがとうございます!それは完璧に働いた –

関連する問題