0

私はDJangoの初心者です。3 つのテーブルを持つデータベースがあります。

> -CRP
>  - SubComponents of a CRP
>     - Objectives of a SubComponent of a CRP.

私は次のモデルを持っています:

class period(models.Model):
    period_code = models.IntegerField(primary_key=True,verbose_name='Period code')
    period_desc = models.CharField(max_length=45,verbose_name='Period description')
    period_current = models.IntegerField(verbose_name='Current period')
    def __unicode__(self):
        return self.period_desc
    class Meta:
        db_table = 'period'

class crp(models.Model):
    crp_code = models.CharField(max_length=3,primary_key=True,verbose_name='CRP code')
    crp_desc = models.CharField(max_length=45,verbose_name='CRP description')
    def __unicode__(self):
        return self.crp_desc
    class Meta:
        db_table = 'crp'

class subcomponent(models.Model):
    crp_code = models.ForeignKey(crp,db_column='crp_code',related_name='subcomponent_crp_code',to_field='crp_code',primary_key=True,verbose_name='CRP code')
    subc_code = models.CharField(max_length=3,primary_key=True,verbose_name='SubComponent Code')
    subc_desc = models.CharField(max_length=45,verbose_name='SubComponent Description')
    def __unicode__(self):
        return self.subc_desc
    class Meta:
        db_table = 'subcomponent'

class objective(models.Model):
    crp_code = models.ForeignKey(subcomponent,db_column='crp_code',related_name='objective_crp_code',to_field='crp_code',primary_key=True,verbose_name='CRP code')
    subc_code = models.ForeignKey(subcomponent,db_column='subc_code',related_name='objective_subc_code',to_field='subc_code',primary_key=True,verbose_name='SubComponent Code')
    obj_year = models.ForeignKey(period,db_column='obj_year',related_name='objective_obj_year',to_field='period_code',primary_key=True,verbose_name='Objective year')
    obj_code = models.CharField(max_length=7,primary_key=True,verbose_name='Objective code')
    obj_desc = models.CharField(max_length=45,verbose_name='Objective description')
    def __unicode__(self):
        return self.obj_desc
    class Meta:
        db_table = 'objective'

「サブコンポーネント」モデル (CRP への参照) ではすべて正常に機能します。「サブコンポーネント」の管理では、ユーザーは CRP をプルダウンしてサブコンポーネントを追加できます。

ただし、モデル「目的」はモデル「サブコンポーネント」を参照します。「目的」の管理では、ユーザーが CRP をプルダウンして選択し、プルダウン リストでその CRP のサブコンポーネントをフィルタリングすることを希望します。これどうやってするの?

どうもありがとう、カルロス。

4

1 に答える 1

0

django-smart-selects を見てください

于 2012-04-11T03:13:47.700 に答える