您好,登錄后才能下訂單哦!
本篇文章為大家展示了Python中怎么操作 Django,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
在開發的時候發現Python Django的模板創建表單的做法確實感到有比較大的局限性,不過自定義forms也有比較讓人稱道的地方,在form中我們可以自定義驗證規則,下面介紹說明一下Python Django的模板的操作。
最復雜功能***大的還是freemarker,支持jsp tag的嵌入讓我們可以重用很多已經存在的組件,這一點我在之前的文章中也有過比較詳細的描述(強強聯手,看freemarker和displaytag的結合)。
由于了解,才有發言權,Python Django的模板可以說是為互連網應用而誕生的,簡潔及快速開發的特點讓人情不自禁的喜歡。大多數模板語言的基本語法都是類似的,比如在freemarker中顯示值是${},而在django是{{}},freemarker中if判斷為<#if></#if>,而django中是:
{% if msg %} Xx {% else %} Xx {% endif%}
再看看在django中渲染模板的方法,有兩種:
def preparePublish(request): t = loader.get_template(publishInfo) return HttpResponse(t.render(Context({'categoryList' : None})))
插一句題外話,關于jsp的題外話,不管是ruby,還是c++,還是python,在它們的web框架中都使用了模板,java中也有很多模板,我們最熟悉的是freemarker和velocity。這從一個側面反映出我們web開發中的一個模式,那就是我們的view基本上是基于模板產生的,而jsp這個東西應該來說是時代的產物,在那個混亂的落后的時代產生的,不過很奇怪的是現在還有這么多人抱著它不放。
Django有兩種form,一種是自己定義form class,還有一種是通過我們定義的model自動form class。 由于ahuaxuan只做 了一個信息發布的小例子,所以并不能全面的了解或者理解django中form的所有細節,不過從我涉及到的部分來講。
我對Python Django的模板創建表單的做法確實感到有比較大的局限性,因為很多時候,model中的數據 并不是從頁面上來的,在這種情況下,form對象被構造出來之后,ahuaxuan還沒有找到修改form中值的方法。
而自定義form類也比較麻煩,就是要寫自己的model,這個和我們之前的做法比較不一樣,這里的form代表我們java中的value object,model是domain object,在我們的ssh框架中我們通常把value object繼承我們的domain object。
雖然一堆又一堆的人提出了反對意見,說要把這兩個對象分開,因為他們處在不同的層次中,但是從實踐經驗中,我們可以看到,這樣做沒有什么不好。而在django中自定義form和model分開的行為可能比較符合一些人的心理。 不過自定義forms也有比較讓人稱道的地方,在form中我們可以自定義驗證規則。
同時我們可以根據form對象直接生成頁面中的內容,不過這一點其實也有比較麻煩的地方,就是如果要改變樣式的時候就比較麻煩,不過總的來說Python Django的模板的form還是比較有特點的,而且一定程度上給我們帶來了方面。
上述內容就是Python中怎么操作 Django,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。