基于外键选择的模型管理员中的动态且相关的多项选择字段

时间:2019-05-27 01:18:56

标签: django admin multiplechoicefield

我有四个模型-公司,员工,办公室和项目。 公司模型非常独立,没有外键。 员工有公司的外键。办公室有公司的外键

项目具有公司的外键。它还具有供员工和办公室使用的CharFields,但除非选择公司,否则它们为空白。 因此,基本上,我需要与该项目正在进行的公司相关的多选员工和办公室。

以某种方式,我可以通过更新self._meta.get_field('employees')。choices,但是问题是当我移至新记录时,选择不会回到原始静态条目。它们保持与先前记录中选择的相同。好像选择是某种内存存储,可能会在类级别传递到新的Project记录。

这就是我所追求的:

  1. 在“项目管理”屏幕上,我们从外键字段中选择“保存”和“编辑”,现在该屏幕上有两个字段可供选择,用于该公司的办公室和员工。

  2. 然后我们可以选择将参与此特定项目的公司的一个或多个办公室以及一个或多个员工。

  3. 我们保存并退出。

  4. 当我们再次返回记录时,管理屏幕将先前选择的办公室和员工显示为选中状态,而其他复选框则未被选中,当然可以更新。

我认为我的知识差距很大。

0 个答案:

没有答案