0

チュートリアルといくつかの小さなサンプルを実行した後、最初の django アプリを開始しました。私は次のモデルを持っています(非常に単純化されています):

class Candidate(models.Model):
    name = models.CharField(max_length=100)

class Vacancy(models.Model):
    title = models.CharField(max_length=100)
    description = models.CharField(max_length=200)
    candidates = models.ManyToManyField(Candidate, blank=True, null=True)

新しい欠員を追加できるフォームを作成しました。候補者は複数選択ボックスとして表示されます。

class CandidateForm(ModelForm):
    class Meta:
        model = Candidate

class VacancyForm(ModelForm):
    class Meta:
        model = Vacancy

しかし、候補者フォームに選択ボックスを追加して、候補者がどの求人に応募しているかを確認するにはどうすればよいですか?

インライン フォームを見つけましたが、ドキュメントを読んでも使い方がわかりません。

よろしくお願いします。

BR、イグナシオ。

4

1 に答える 1

0

ModelChoiceFieldを手動で追加すると、途中まで到達するはずです。

from django import forms

class CandidateForm(ModelForm):
    vacancies = forms.ModelChoiceField(queryset=Vacancy.objects.order_by("title"))
    class Meta:
        model = Candidate

次に、あなたの見解では、次のようなことをします:

if request.POST:
    form = CandidateForm(request.POST)
    if form.is_valid():
        candidate = form.save()
        for v in form.cleaned_data["vacancies"]:
            v.candidates.add(candidate)
于 2012-08-15T17:49:47.790 に答える