問題:我的 UpdateView 看起來與我的 CreateView 相同。我想將提交按鈕從“檢查”更改為“更新”。
以下是我在 views.py 檔案中的觀點:
class CapsUnifCreateView(CreateView):
template_name = 'capsules/uniformity_form.html'
model = models.Uniformity
fields = (
'caps_name',
'mass_1_caps_empty',
'mass_20_caps_full',
'mass_max1',
'mass_min1',
)
class CapsUnifUpdateView(UpdateView):
fields = (
'caps_name',
'mass_1_caps_empty',
'mass_20_caps_full',
'mass_max1',
'mass_min1',
)
model = models.Uniformity
請注意,我沒有為 UpdateView 使用單獨的模板。
就像是
{% if CreateView %} Check {% else %} Update {% endif %}
在 html 檔案中會很好,但我不知道如何實作它。
提前致謝!
uj5u.com熱心網友回復:
在視圖中使用獲取背景關系資料
class CapsUnifCreateView(CreateView):
template_name = 'capsules/uniformity_form.html'
model = models.Uniformity
fields = (
'caps_name',
'mass_1_caps_empty',
'mass_20_caps_full',
'mass_max1',
'mass_min1',
)
def get_context_data(self, **kwargs):
context = super(CapsUnifCreateView, self).get_context_data(**kwargs)
context['is_update'] = False
return context
class CapsUnifUpdateView(UpdateView):
fields = (
'caps_name',
'mass_1_caps_empty',
'mass_20_caps_full',
'mass_max1',
'mass_min1',
)
model = models.Uniformity
def get_context_data(self, **kwargs):
context = super(CapsUnifUpdateView, self).get_context_data(**kwargs)
context['is_update'] = True
return context
在您的模板檢查中
{% if is_update %} Update {% else %} Create {% endif %}
uj5u.com熱心網友回復:
找到了!在 ModelName_form.html(鏈接到 CreateView 的 html 檔案)中:
{% if not form.instance.pk %}
<input type="submit" class="btn btn-primary" value="Check">
{% else %}
<input type="submit" class="btn btn-primary" value="Update">
{% endif %}
這意味著,如果背景關系中沒有主鍵(在 CreateView 期間),則顯示“Check”,否則如果有主鍵(在 UpdateView 期間),則顯示“Update”。
感謝您的努力!
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/422385.html
標籤:
上一篇:輸入php代碼后內容不出現
下一篇:停止重疊html和css的文本
