と の 2 つのモデルがLeague
ありTeam
ます。Team
には への外部キー リンクがありLeague
ます。Team
に格納されている値に基づいて、 で使用できる選択肢を設定できるようにしたいと考えていますLeague
。具体的には:
class League(models.Model):
number_of_teams = models.IntegerField()
class Team(models.Model):
league = models.ForeignKey(League)
draft_slot = models.IntegerField(choices=[(i+1,i+1) for i in range(?????????)])
モデルで自分draft_slot.choices
を正確に定義できないことを認識しています。Team
したがって、次のように設定することを期待してTeam
います:
class Team(models.Model):
league = models.ForeignKey(League)
draft_slot = models.IntegerField()
私はのを設定しましModelForm
たTeam
:
class TeamModelForm(ModelForm):
class Meta:
model = Team
そしてのビューTeam
ModelForm
:
def SetupTeam(request, fanatic_slug=None, league_slug=None):
league = League.objects.get(slug=league_slug)
form = TeamModelForm()
return render_to_response('league/addteam.html', {
'form': form
}, context_instance = RequestContext(request))
league.id
を使用するために必要な foo は何ですか?league.number_of_teams
のビューは、表現するフィールドをTeamModelForm
事前入力し、次のようにレンダリングします。team.league
team.draft_slot
draft_slot = models.IntegerField(choices=[(i+1,i+1) for i in range(league.number_of_teams+1)])