2017-03-26 87 views
0

models.py:Django管理:顯示/隱藏字段中選擇任意一個下拉值

class Plan(models.Model): 
    PLAN_TYPE_CHOICES = (
     ('global', 'Global'), 
     ('user specific', 'User Specific'), 
    ) 
    name_of_plan = models.CharField(max_length=256, null=False, blank=False) 
    number_of_months = models.IntegerField(db_index=True) 
    type_of_plan = models.CharField(choices=PLAN_TYPE_CHOICES) 
    specific_users = models.ManyToManyField(User, db_index=True) 

admin.py

from django.contrib import admin 
from .models import Plan 

class PlanAdmin(admin.ModelAdmin): 
    model = Plan 

admin.site.register(Plan, PlanAdmin) 

在管理頁面中我已經type_of_plan與選擇: 「環球」, 「用戶特定」...當我選擇「用戶特定」值我需要顯示specific_users字段當我選擇「全局」值我需要隱藏specific_users字段...我該怎麼做?

回答

0

admin.py創建PlanAdmin(admin.ModelAdmin)類,並實現你的邏輯,讓管理員形式在get_form功能。

有關詳細信息和示例實現,看到這個更普遍的問題:How to hide some fields in django-admin?

+0

[?如何隱藏在Django管理員某些領域(http://stackoverflow.com/questions/10330916/how-to-hide -some-fields-in-django-admin) 這個解決方案對我來說不起作用,因爲我的問題是「可以根據type_of_plan字段中的選擇(使用JQuery或其他)顯示和隱藏管理面板中的一些字段? 「 –

+0

您可以在'get_form'函數中實現該邏輯 – matusko

相關問題