1. 程式人生 > >django程式三分鐘快速入門

django程式三分鐘快速入門

目錄D:\newtest

第一步:
D:\newtest> manage.py startapp  contact
產生檔案
__init__.py
models.py
views.py

第二步:
在contact目錄中新建forms.py檔案
forms.py內容如下

# -*- coding: UTF-8 -*-
from django import forms

class ContactForm(forms.Form):
    subject = forms.CharField()
    email = forms.EmailField(required=False)
    message = forms.CharField()

第三步:setting.py INSTALLED_APPS 加入應用程式
INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'newtest.wiki',
    'newtest.address',
    'newtest.classmate',
    'newtest.ajax',
    'newtest.contact',#這是新加的


第四步:
D:\newtest>python manage.py shell
>>> from address.forms import ContactForm
>>> f = ContactForm()
>>> print f
<tr><th><label for="id_subject">Subject:</label></th><td><input type="text" name="subject" id="id_subject" /></td></tr>
<tr><th><label for="id_email">Email:</label></th><td><input type="text" name="email" id="id_email" /></td></tr>
<tr><th><label for="id_message">Message:</label></th><td><input type="text" name="message" id="id_message" /></td></tr>
>>> print f.as_ul()
<li><label for="id_subject">Subject:</label> <input type="text" name="subject" id="id_subject" /></li>
<li><label for="id_email">Email:</label> <input type="text" name="email" id="id_email" /></li>
<li><label for="id_message">Message:</label> <input type="text" name="message" id="id_message" /></li>
>>> print f.as_p()
<p><label for="id_subject">Subject:</label> <input type="text" name="subject" id="id_subject" /></p>
<p><label for="id_email">Email:</label> <input type="text" name="email" id="id_email" /></p>
<p><label for="id_message">Message:</label> <input type="text" name="message" id="id_message" /></p>
>>> print f.as_d()
Traceback (most recent call last):
  File "<console>", line 1, in <module>
AttributeError: 'ContactForm' object has no attribute 'as_d'
>>> print f.as_p()
<p><label for="id_subject">Subject:</label> <input type="text" name="subject" id="id_subject" /></p>
<p><label for="id_email">Email:</label> <input type="text" name="email" id="id_email" /></p>
<p><label for="id_message">Message:</label> <input type="text" name="message" id="id_message" /></p>
>>> print f['subject']
<input type="text" name="subject" id="id_subject" />
>>> print f['message']
<input type="text" name="message" id="id_message" />
>>> ^Z


D:\newtest> manage.py startapp  contact
Error: [Error 183] : 'D:\\newtest\\..\\newtest\\contact'

D:\newtest> manage.py startapp  contact

D:\newtest>python manage.py shell
Python 2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from contact.forms import ContactForm
>>> f = ContactForm()
>>> f
<contact.forms.ContactForm object at 0x0115FB90>
>>> print f  #或者print f.as_table()結果一樣
<tr><th><label for="id_subject">Subject:</label></th><td><input type="text" name="subject" id="id_subject" /></td></tr>
<tr><th><label for="id_email">Email:</label></th><td><input type="text" name="email" id="id_email" /></td></tr>
<tr><th><label for="id_message">Message:</label></th><td><input type="text" name="message" id="id_message" /></td></tr>
>>> print f.as_ul()
#注意到<li>沒有
<li><label for="id_subject">Subject:</label> <input type="text" name="subject" id="id_subject" /></li>
<li><label for="id_email">Email:</label> <input type="text" name="email" id="id_email" /></li>
<li><label for="id_message">Message:</label> <input type="text" name="message" id="id_message" /></li>
>>> print f.as_p()
#注意到<p>沒有
<p><label for="id_subject">Subject:</label> <input type="text" name="subject" id="id_subject" /></p>
<p><label for="id_email">Email:</label> <input type="text" name="email" id="id_email" /></p>
<p><label for="id_message">Message:</label> <input type="text" name="message" id="id_message" /></p>
>>> print f['subject']
<input type="text" name="subject" id="id_subject" />
>>> print f['message']
<input type="text" name="message" id="id_message" />
>>> print f['email']
<input type="text" name="email" id="id_email" />
>>> f = ContactForm({'subject':'Hello','email':'

[email protected]','message':'this is a forms instance'})
>>> f.is_bound
True
>>> f.is_valid()
False
>>> f = ContactForm({'subject':'Hello','message':'Nice site'})
>>> f.is_valid()
False
>>> f['message'].errors
[u'This field is required.']
>>> f['subject'].errors
[]
>>> f['email'].errors
[]
>>> f.errors
{'message': [u'This field is required.']}

>>> f = ContactForm({'subject':'Hello','email':'
[email protected]
','message':'this is a forms
>>> f.is_valid()
True
>>> f.cleaned_data
{'message': u'this is a forms instance', 'email': u'[email protected]', 'subject': u'Hello'}

相關推薦

django程式分鐘快速入門

目錄D:\newtest 第一步: D:\newtest> manage.py startapp  contact 產生檔案 __init__.py models.py views.py 第二步: 在contact目錄中新建forms.py檔案 forms.py內容如下

Django REST framework 的快速入門教程

ret turn ads 使用 blog 所有 定義 想去 cti CRM-API項目搭建 序列器(Serializers) 首先,我們來定義一些序列器。我們來創建一個新的模塊(module)叫做 crm/rest_searializer.py ,這是我們用來描述數據是如何

Vue.js——60分鐘快速入門

attribute 否則 style屬性 快速 基於 oid creat get rac Vue.js是當下很火的一個JavaScript MVVM庫,它是以數據驅動和組件化的思想構建的。相比於Angular.js,Vue.js提供了更加簡潔、更易於理解的API,使得我們能

Vue.js——vue-router 60分鐘快速入門

ges 內部使用 note eight 開始 href for ram 加載 概述 vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,適合用於構建單頁面應用。vue的單頁面應用是基於路由和組件的,路由用於設定訪問路徑,並將路徑和組件映射起來。傳

【PyTorch深度學習60分鐘快速入門 】Part1:PyTorch是什麽?

修改 .com org -c .cn ndarray 兩種 ble 我們 0x00 PyTorch是什麽? PyTorch是一個基於Python的科學計算工具包,它主要面向兩種場景: 用於替代NumPy,可以使用GPU的計算力 一種深度學習研究平臺,可以提供最大的靈活

前端模組化-5分鐘快速入門RequireJs

各位開發專案的時候引用JS都會遇到以下的情景 產生AMD規範的背景 因為使用各種外掛,或者團隊協同合作,產生多個js檔案, 假如使用的JQ外掛,則必須先引用jquery庫才能夠正常執行, JS檔案之間強依賴關係,讓我們不敢動檔案的引入順序。 並且,在渲染頁面的過程中,同步讀取JS檔案會

10分鐘快速入門rollup.js

為什麼要學習rollup.js rollup.js是Javascript的ES模組打包器,我們熟知的Vue、React等諸多知名框架或類庫都通過rollup.js進行打包。與Webpack偏向於應用打包的定位不同,rollup.js更專注於Javascript類庫打包(雖然rollup.js也可以提供資源打

微信小程式0基礎快速入門(史上最全!!!)

產品定位及功能介紹 微信小程式是一種全新的連線使用者與服務的方式,它可以在微信內被便捷地獲取和傳播,同時具有出色的使用體驗。 小程式註冊 註冊小程式帳號 在微信公眾平臺官網首頁(mp.weixin.qq.com)點選右上角的“立即註冊”按鈕。 選擇註冊的帳號型別 選擇“

Python開發——十分鐘快速入門

版權宣告:本文為博主原創文章,未經博主允許不得轉載。原文連結:https://blog.csdn.net/qq_37992321/article/details/83995517 一、瞭解Python 什麼是python? python有什麼特色? 二、在Windows系統下搭建P

15分鐘快速入門Python套路!這7個案例值得一看

有人用Python從各大視訊網站下視訊,有人成功用Python跳一跳跳到4999,有人用Python撩妹子,還有人設計了一套程式碼自動搶紅包... 俗話說外行看熱鬧,內行看門道,我們已經知道了python的火熱情況,但是學一門程式語言是需要花大量精力的,所以我們最關心的還是

10 分鐘快速入門:HTTP快取

場景1: 每次你開啟 XXXXHub,準備麒麟臂,滿心歡喜的等待一張圖片載入回來。圖片終於不負眾望載入回來了,可這居然是昨天看過的那張!這簡直大煞風景!誰能忍! 場景2: 有些時候,辦公室裡會傳來產品大人的尖叫:“怎麼網頁還是原來的樣子?” 然後你會聽到前端 GGMM 們不屑的回答:“我

React 10分鐘快速入門

一、簡介: React 是一個用於構建使用者介面的 JAVASCRIPT 庫。 React主要用於構建UI,很多人認為 React 是 MVC 中的 V(檢視)。 React 起源於 Facebook 的內部專案,用來架設 Instagram 的網站,並於 2013 年 5 月開源。 React

Scala十分鐘快速入門

本文的假設基礎是:你有一定的程式設計功底,並且已經知道你要使用Scala做什麼。最好對函數語言程式設計有所瞭解。如果你有指令碼語言的基礎例如Python,那麼一定會更快。 Scala Interpreter 和其他指令碼語言相通,Scala

PyTorch 深度學習:60分鐘快速入門(2) ----Autograd: 自動求導

PyTorch 中所有神經網路的核心是autograd包.我們首先簡單介紹一下這個包,然後訓練我們的第一個神經網路. autograd包為張量上的所有操作提供了自動求導.它是一個執行時定義的框架,這意味著反向傳播是根據你的程式碼如何執行來定義,並且每次迭代可以不同. 接下來我們用一些

PyTorch 深度學習:60分鐘快速入門(1) ----什麼是PyTorch

本文翻譯的版本是pytorch 1.0.0官方文件 譯自 pytorch官方文件 作者:Soumith Chintala 教程目標: 深入理解PyTorch張量庫和神經網路 訓練一個小的神經網路來分類圖片 這個教程假設你熟悉numpy的基本操作。

電腦上怎麼繪製流程圖?分鐘快速繪製流程圖的祕訣

我們在工作生活中經常能看到各式各樣的流程圖。流程圖主要由線條、幾何圖框以及文字構成,根據應用場景分為:業務流程圖、資料流程圖、頁面流程圖等。職場小白也許會認為流程圖是個很複雜的東西,其實啊,它一點也不復雜,聽我向你簡單講講,不用五分鐘就能吃透一張流程圖的畫法了。 上面提到

Python語言十分鐘快速入門

假設你希望學習Python這門語言,卻苦於找不到一個簡短而全面的入門教程。那麼本教程將花費十分鐘的時間帶你走入Python的大門。本文的內容介於教程(Toturial)和速查手冊(CheatSheet)之間,因此只會包含一些基本概念。很顯然,如果你希望真正學好一門語言,你還是需要親自動手實踐的。在此,我會假

Vue.js——vue-router 60分鐘快速入門【9】

概述 vue-router是Vue.js官方的路由外掛,它和vue.js是深度整合的,適合用於構建單頁面應用。vue的單頁面應用是基於路由和元件的,路由用於設定訪問路徑,並將路徑和元件對映起來。傳統的頁面應用,是用一些超連結來實現頁面切換和跳轉的。在vue-router單頁面應用中,則是路徑之間的切換,也

PyTorch 深度學習:60分鐘快速入門

此教程為翻譯官方地址 本教程的目標: 深入理解PyTorch張量庫和神經網路 訓練一個小的神經網路來分類圖片 這個教程假設你熟悉numpy的基本操作。 注意 請確保torch和torchvision包已經安裝。 一、PyTorch 是什麼

element 原始碼學習(番外篇) —— SASS五分鐘快速入門

這算是 element 原始碼學習的番外篇,因為 element 中使用了大量 sass 來寫樣式。而 UI 框架的核心其實就是樣式。所以,抽空把 sass 學了一遍,寫了些小 demo 實踐,總結成此文。 SASS 安裝和除錯 簡單說下 sas