当在另一个下拉列表上进行选择时,如何在 Django 的管理员中过滤下拉列表
Posted
技术标签:
【中文标题】当在另一个下拉列表上进行选择时,如何在 Django 的管理员中过滤下拉列表【英文标题】:How to filter a dropdownlist in Django's admin when a selection is made on another dropdownlist 【发布时间】:2012-04-08 20:42:22 【问题描述】:我在 Django 管理站点中有两个下拉列表。例如,我有 SelectCountry 和 SelectRegion。 Region 与 Country 有外键关系。如何确保在选择国家/地区时,根据该国家/地区过滤区域?
注意:我也在使用 django-grappelli 作为我的管理后端。
任何想法都会受到赞赏。谢谢。
【问题讨论】:
据我所知,没有特别简单的方法。你可以使用javascript;选择一个国家时,异步调用服务器,检索所选国家/地区的区域列表并使用该区域填充第二个列表。这将需要弄乱 django 模板等。 @pastylegs - 感谢您的回复。我希望有一种默认的方式来处理这个问题,因为我不希望(我也没有太多经验)覆盖模板和默认的 Django js 实现。 考虑使用autocompletion而不是动态过滤。 您可能会在这里找到一些有用的想法:***.com/q/9677832/284164 看这里:***.com/questions/1914358/django-chain-select 【参考方案1】:正如 DrMeers 所暗示的,请使用 django-smart-selects。重新发明***没有意义。
【讨论】:
django-smart-selects 最近变得无人管理。有其他选择吗?以上是关于当在另一个下拉列表上进行选择时,如何在 Django 的管理员中过滤下拉列表的主要内容,如果未能解决你的问题,请参考以下文章
如何使已选择的选项不显示在另一个选择选项下拉 JAVASCRIPT/ANGULARJs