【问题标题】:how to hide or show fields of model after clicked on choice field from admin in django在 django 中单击管理员的选择字段后如何隐藏或显示模型字段
【发布时间】:2016-05-19 06:54:23
【问题描述】:
class BannerAddPage(models.Model):
    BOOL_CHOICES = ((True, 'Live'), (False, 'Pause'))
    TYPE_CHOICES = (('text', 'text'), ('image', 'image'))
    category=models.ForeignKey(Category,blank=True)
    client=models.ForeignKey(Client)
    ad_type=models.CharField(choices=TYPE_CHOICES,default=True)
    ad_name=models.CharField(max_length=800,null=True,blank=True)
    ad_title=models.CharField(max_length=800,null=True,blank=True)
    ad_url1=models.URLField(max_length=800,blank=True,null=True)
    ad_banner2=models.ImageField(upload_to=upload_to1,blank=True,null=True)

See the image here

我想在点击ad_type(choice) 字段后隐藏一些字段。

【问题讨论】:

    标签: python django django-models


    【解决方案1】:

    最好的方法是使用表单媒体添加一个外部 javascript 文件,该文件将监听字段 ad_type 的更改事件并执行您需要的操作。

    在这种情况下,您将需要很少的 python 和更多的 js,但我认为这是干净的方式。

    要添加外部js文件使用class Media,这个answer到另一个问题显示一个实际的例子。

    除了编写 js 代码的乐趣之外,您还可以使用 django admin 中已经包含的 jQuery。

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 2014-11-26
      • 2019-12-01
      • 2019-01-30
      • 2014-12-01
      • 2012-09-19
      • 2017-05-08
      • 2017-03-08
      • 2018-05-30
      • 1970-01-01
      相关资源
      最近更新 更多