我最近開始在Django中編寫代碼,所以也許我的問題有點奇怪。 最近我需要將模型中的CharField
字段渲染爲html中的簡單靜態文本,但我發現它似乎並非如此簡單,因爲我能想到,或者我做錯了什麼......如何將CharField轉換爲Django中的靜態文本?
我有這樣的模式:
class Tag(models.Model):
CATEGORIES = (
(0, 'category0'),
(1, 'category1'),
(2, 'category2'),
(3, 'category3'),
(4, 'category4'),
(5, 'category5'))
name = models.CharField(max_length=20)
description = models.CharField(max_length=100, blank=True)
category = models.IntegerField(default=0)
user = models.ForeignKey(User)
它Form類是:
class TagForm(ModelForm):
category = ChoiceField(choices=Tag.CATEGORIES)
class Meta:
model = Tag
在視圖中創建該formset多以單獨的形式Tag
對象與提供TagForm
CLA SS每個Tag
對象是:
TagsFormSet = modelformset_factory(Tag,exclude=('user'),form=TagForm,extra=0)
form = TagsFormSet(queryset=all_tags)
,並在模板中我有:
{{ form.management_form }}
{% for tagform in form.forms %}
{{ tagform }}
<hr>
{% endfor %}
但這種方式在HTML中,「名」和「說明」的模式字段始終呈現作爲輸入文本字段。我希望他們在HTML中就像普通的靜態文本一樣沒有任何東西(在那個HTML中,我只需要顯示它們)。這種情況有沒有快速解決方案?
嗨馬丁,謝謝你的回答。是的,我之前嘗試過這種解決方案,但實際上這種方式編輯框已禁用,但在文本週圍仍可見。我的目標是徹底刪除這個編輯框,並離開那裏只是純文本,而不是它,但這一個我不知道如何實現... – surry 2010-10-31 16:50:40