2013-12-08 68 views
0

models.pyDjango1.6更新視圖,而無需更新

class Application(models.Model): 
    desc = models.CharField(max_length=40, unique=True, null=False) 
    name = models.CharField(max_length=40, null=False) 
    user = models.ForeignKey(User) 

views.py

class ApplicationUpdate(UpdateView): 
    model = Application 
    template_name = "apps/update.html" 
    fields = ['name', 'desc'] 
    context_object_name = "app" 
    success_url = reverse_lazy('app-list') 

模板

<div class='update-item'> 
     {{form.name.error}} 
     {{form.name.label_tag}} 
     {{form.name}} 
    </div> 
    <div class='update-item'> 
     {{form.desc.value}} 
    </div> 

這裏如何顯示領域我想顯示降序字段在模板中,但更新時只有POST名稱字段。任何解決方案?

回答

1

嘗試其中之一:

  1. 只讀設置上,你不希望被更改的字段屬性。

  2. 相反的{{form.desc.value}}可以顯示實例字段的值 - {{ form.instance.desc }},接下來從include屬性中刪除desc場。

+0

燁,它的工作原理。但可能不要在輸入元素中放置desc字段? – linbo

+0

@linbo我不確定你在問什麼。如果你想顯示它作爲文本輸入,只需創建自定義輸入標籤並將'{{form.instance.desc}}'作爲值。只是不要爲輸入設置任何名稱屬性,所以它不會被請求拾取。 – mariodev

+0

如果請求沒有挑遞減場,看起來更新不會在div元素工作 – linbo