python - Django ManyToManyField 字段数据在 admin后台 显示不正确,这是怎么回事?
伊谢尔伦
伊谢尔伦 2017-04-18 10:31:19
0
3
545
class Project(models.Model):
    """项目的model定义"""
    REL_CHOICES=(('是','已发布'),('否','未发布'),)

    proid = models.CharField("项目编号",max_length = 20,primary_key = True)
    proname = models.CharField("项目名称",max_length = 25)
    prostarttime = models.DateField("项目开始时间")
    prorelease = models.CharField("是否已发布",max_length = 5,choices = REL_CHOICES)
    proreltime = models.DateField("项目发布时间")
    proparticipants = models.ManyToManyField(User)#参与人员
    proplantime = models.IntegerField("计划周期:天")
    prodataids = models.ManyToManyField(Data,blank=True)#属于本项目的数据id


    class Meta:
        verbose_name='项目信息'
        verbose_name_plural='项目信息'
        permissions = (   #自定义的特殊权限
            ("can_drive", "自定权限1"),
            ("can_vote", "自定权限2"),
            ("can_drink", "自定权限3"),
        )

    def __str__(self):
        return self.proname
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

我本以为是像这样的


可编辑的

但是最后结果却是

proparticipants和prodataids那里自动地就把所有的用户和所有的数据全都关联上了,且只能添加新的,不能增删修改,这是怎么回事?求大神指点。

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(3)
巴扎黑

この問題は最終的に解決されました。ここで見つけました: http://stackoverflow.com/ques...
ぜひご覧ください。

いいねを押す +0
刘奇

Django の管理者の背景は、manytomanyfield フィールドを次のようにレンダリングします。

関連するデータが削除され、他のテーブルで変更されます。自分のアイデアを実現したい場合は、自分でカスタマイズする必要があります。

いいねを押す +0
洪涛

デフォルトのスタイルをオーバーライドする必要があります

参考

https://github.com/django/dja...

https://github.com/django/dja...

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!