如何使用可编辑的"其他"选项在django中创建选项字段?

Rag*_*esX 11 python django

(
    ('one', 'One'),
    ('two', 'Two'),
    ('other', EDITABLE_HUMAN_READABLE_CHOICE),
)
Run Code Online (Sandbox Code Playgroud)

所以我想要的是一个选择字段,其中包含一些经常使用的常见选项,但仍然可以选择填写自定义的人类可读值.

这是可能的还是有更好的方法来做到这一点,我完全失踪了?

Man*_*dan 7

一种方法是使用自定义ModelForm管理员.此表单可以有两个字段 - 一个接受一组预定义的选项,另一个接受任意值.在该clean()方法中,您可以确保仅选择其中一个.

如果您特别关注UI的外观 - 例如,单选按钮允许您选择预定义的值xor输入自定义值,那么您可能需要提供自己的自定义字段.