Django ModelChoiceField初始数据不适用于ForeignKey

时间:2009-08-18 22:34:01

标签: python django

我使用normail填写初始数据:

form = somethingForm(initial = {
                    'title' : something.title,                    
                    'category' : something.category_id,
                })

标题工作正常,但如果类别是模型中的ModelChoiceField和ForeignKey,则初始数据将不起作用。选择框中不会选择任何内容。如果我将类别更改为模型中的IntegerField,它可以正常工作。

我仍然希望将ForeignKey用于类别,那么我该如何解决这个问题呢?

2 个答案:

答案 0 :(得分:1)

也许尝试使用类别的实例而不是其ID?

答案 1 :(得分:0)

你需要这样做

form = somethingForm(initial = {
                    'title' : something.title,                    
                    'category' : [("database value","display value")],
                })

为什么要列出元组?

  1. 因为选择字段与选择小部件相关联(即     html ===>     ..............)

  2. 对于每个选项,我们需要指定两件事1.内部价值     2.display value(列表中的每个元组都指定了这个)