ファイル: 容量/models.py
class Env(models.Model):
name = models.CharField(max_length=50)
def get_absolute_url(self):
return reverse('index')
class Envhosts(models.Model):
env = models.ForeignKey(Env)
hostname = models.CharField(max_length=50)
count = models.IntegerField()
class Meta:
unique_together = ("env","hostname")
def get_absolute_url(self):
return reverse('index')
ファイル: Capacity/views.py
class EnvhostsCreate(CreateView):
model = Capacity.models.Envhosts
fields=['env','hostname','count']
template_name_suffix = '_create_form'
ファイル容量/urls.py:
urlpatterns = patterns(........ url(r'^createhosts/(?P<envid>\d+)/$',EnvhostsCreate.as_view(),name='envhosts_create'))
だから今、私がこのフォームを開くと:
/Capacity/createhosts/3/
(3は私のenv idです)Envのオブジェクトの数に基づいてドロップダウンリストとしてenvオブジェクトのオプションを示しています。しかし、env id (この場合は「3」) に基づいて、env を独自に取得したい
クラス EnvhostsCreate(CreateView) のいくつかのメソッドをオーバーライドする必要があることはわかっています。しかし、後の部分に基づいて環境を取得する方法と方法を理解できません/createhosts/