2015-01-09 52 views
-1

我最近購買了一個HTML模板來創建我自己的網站。現在我試圖在我的Django 1.7.1應用程序中逐步移植每個需要的HTML文件。到目前爲止一切正常。在玩了一段時間之後,我決定做一些重構,特別是我有興趣將HTML源代碼的一部分轉換爲模板。如何使用HTML源代碼在django中創建表格

讓我們代表的註冊表單的用戶名輸入一個例子:

<div class="form-group"> 
    <label class="control-label visible-ie8 visible-ie9">Username</label> 
    <div class="input-icon"> 
     <i class="fa fa-user"></i> 
     <input class="form-control placeholder-no-fix" type="text" autocomplete="off" placeholder="Username" name="username"/> 
    </div> 
</div> 

正如我已經從Django文檔和示例和教程可在網上看到的,一個可能的模板可能是以下:

<div class="form-group"> 
<label class="control-label visible-ie8 visible-ie9">{{ placeholder }}</label> 
<div class="input-icon"> 
    <i class={{ i_css_class }}></i> 
    <input class="{{ css_class }}" type="{{ type }}" autocomplete="{{ autocomplete }}" placeholder="{{ placeholder }}" name="{{ name }}"/> 
</div> 

我的問題是:

  1. 模板是否正確書寫?
  2. 如何寫表格?
  3. 如何寫視圖?

目的:

  • 最後,通過使用Django的形式,我應該得到完全相同的HTML代碼如上。
+0

請添加Django視圖,該視圖提供HTML表單中顯示的上下文。 – 2015-01-09 22:54:41

+0

@aron:實際上View並沒有做太多,只是渲染了html文件。 – lucab0ni 2015-01-09 23:07:17

回答

0
  1. 不,這不是糾正你缺少引號,你應該是這樣的:

    class="{{ css_class }}" 
    

    ,而不是

    class={{ css_class }} 
    
  2. 我想你所談論的Form class:該部分不是「強制性的」,你可以只使用純html格式並在JS中進行驗證而不是使用Django facilites,但是,如果你喜歡做「Django的方式」,請看https://docs.djangoproject.com/en/1.7/topics/forms/

  3. HttpRequest.POST是你在你選擇做自己的JS驗證情況的朋友,否則,如果你這樣做「Django的方式」,你需要按照我給你上面的鏈接解釋從form.cleaned_data檢索數據。

+0

PS如果您想遵循「Django方式」,並且仍然能夠爲表單編寫自己的html,請參閱我提供的鏈接中的段落「手動渲染字段」。這樣,您仍然可以根據自己的模板設置表單樣式,而無需修改CSS – mastazi 2015-01-10 00:43:32

相關問題