1. 程式人生 > >django開發基本網頁和使用MySQL

django開發基本網頁和使用MySQL



開始一個專案

開啟cmd ,進入django的開發目錄(自己按個人習慣建議個開發目錄)

~/django-admin.pystartprojectmysite,注意,這裡的django-admin.py要輸入絕對路徑

      這樣就會在當前目錄下建立一個目錄 mysite,

      startproject 命令建立一個目錄mysite,包含4個檔案:    
 

  • __init__.py :讓 Python 把該目錄當成一個開發包 (即一組模組)所需的檔案。 這是一個空檔案,一般你不需要修改它。

  • manage.py :一種命令列工具,可讓你以多種方式與該 Django 專案進行互動。 鍵入python

    manage.pyhelp,看一下它能做什麼。 你應當不需要編輯這個檔案;在這個目錄下生成它純是為了方便。

  • settings.py :該 Django 專案的設定或配置。 檢視並理解這個檔案中可用的設定型別及其預設值。

  • urls.py:django專案的URL設定。 可視其為你的django網站的目錄。 目前,它是空的。

執行開發伺服器

要執行你的伺服器,請切換到你的專案目錄裡 (cdmysite )。如果你還沒準備好,那麼執行下面的命令:

python manage.py runserver

你會看到些像這樣的

Validating models...
0 errors found.


Django version 1.0, using settings 'mysite.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

這將會在埠8000啟動一個本地伺服器, 並且只能從你的這臺電腦連線和訪問。 既然伺服器已經執行起來了,現在用網頁瀏覽器訪問http://127.0.0.1:8000/ 。 你應該可以看到一個令人賞心悅目的的淡藍色Django歡迎頁面。 它開始工作了。

建立簡單的網頁

 1)在上一篇中使用django-admin.pystartproject製作的mysite資料夾中,建立一個叫做views.py的空檔案。這個Python模組將包含這一章的檢視。 請留意,Django對於view.py的檔案命名沒有特別的要求,它不在乎這個檔案叫什麼。但是根據約定,把它命名成view.py是個好主意,這樣有利於其他開發者讀懂你的程式碼,正如你很容易的往下讀懂本文。

我們的Hello world檢視非常簡單。 這些是完整的函式和匯入宣告,你需要輸入到views.py檔案:


[python] view plaincopyprint?在CODE上檢視程式碼片派生到我的程式碼片
  1. from django.http import HttpResponse  
  2. def hello(request):  
  3.     return HttpResponse("Hello world")  
from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello world")

這裡就不分析程式碼了

2) 然後在urls.py中新增url呼叫

[python] view plaincopyprint?在CODE上檢視程式碼片派生到我的程式碼片
  1. from django.conf.urls.defaults import *  
  2. # Uncomment the next two lines to enable the admin:
  3. # from django.contrib import admin
  4. # admin.autodiscover()
  5. urlpatterns = patterns('',  
  6.     # Example:
  7.     # (r'^mysite/', include('mysite.foo.urls')),
  8.     # Uncomment the admin/doc line below and add 'django.contrib.admindocs'
  9.     # to INSTALLED_APPS to enable admin documentation:
  10.     # (r'^admin/doc/', include('django.contrib.admindocs.urls')),
  11.     ('^hello/$', hello),  
  12.     # Uncomment the next line to enable the admin:
  13.     # (r'^admin/', include(admin.site.urls)),
  14. )  
from django.conf.urls.defaults import *

# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
# admin.autodiscover()

urlpatterns = patterns('',
    # Example:
    # (r'^mysite/', include('mysite.foo.urls')),

    # Uncomment the admin/doc line below and add 'django.contrib.admindocs'
    # to INSTALLED_APPS to enable admin documentation:
    # (r'^admin/doc/', include('django.contrib.admindocs.urls')),
    ('^hello/$', hello),
    # Uncomment the next line to enable the admin:
    # (r'^admin/', include(admin.site.urls)),
)
在cmd下,cd 到mysite所在目錄,輸入python manage.py runserver,啟動網頁服務

然後在瀏覽器輸入http://127.0.0.1:8000/hello/

即可看到我們熟悉的介面,Hello World!

Django站點管理(使用MySQL)

1)修改settings.py

[python] view plaincopyprint?在CODE上檢視程式碼片派生到我的程式碼片
  1. DATABASES = {  
  2.     'default': {  
  3. #        'ENGINE': 'django.db.backends.sqlite3',
  4. #        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
  5.         'ENGINE''django.db.backends.mysql',  
  6.         'NAME''test',  
  7.         'USER''root',  
  8.         'PASSWORD''123456',  
  9.     }  
  10. }  
DATABASES = {
    'default': {
#        'ENGINE': 'django.db.backends.sqlite3',
#        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
		'ENGINE': 'django.db.backends.mysql',
		'NAME': 'test',
		'USER': 'root',
		'PASSWORD': '123456',
		


    }
}

這裡的使用者名稱密碼換成自己的

現在我們可以建立資料庫表了。 首先,用下面的命令對校驗模型的有效性:

python manage.py validate

確定資料庫連線正確的,就可以建立app了,執行python manage.py startapp books

它將mysite 的目錄裡建立了一個 books 目錄,如下結構

books/
    __init__.py
    models.py
    tests.py
    views.py
修改books/models.py  [python] view plaincopyprint?在CODE上檢視程式碼片派生到我的程式碼片
  1. from django.db import models  
  2. # Create your models here.
  3. class Publisher(models.Model):  
  4.     name = models.CharField(max_length=30)  
  5.     address = models.CharField(max_length=50)  
  6.     city = models.CharField(max_length=60)  
  7.     state_province = models.CharField(max_length=30)  
  8.     country = models.CharField(max_length=50)  
  9.     website = models.URLField()  
  10. class Author(models.Model):  
  11.     first_name = models.CharField(max_length=30)  
  12.     last_name = models.CharField(max_length=40)  
  13.     email = models.EmailField()  
  14. class Book(models.Model):  
  15.     title = models.CharField(max_length=100)  
  16.     authors = models.ManyToManyField(Author)  
  17.     publisher = models.ForeignKey(Publisher)  
  18.     publication_date = models.DateField()  
from django.db import models

# Create your models here.
class Publisher(models.Model):
    name = models.CharField(max_length=30)
    address = models.CharField(max_length=50)
    city = models.CharField(max_length=60)
    state_province = models.CharField(max_length=30)
    country = models.CharField(max_length=50)
    website = models.URLField()

class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)
    email = models.EmailField()

class Book(models.Model):
    title = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)
    publisher = models.ForeignKey(Publisher)
    publication_date = models.DateField()

再次編輯settings.py,
# Application definition


INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'books',
)


MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
)

books如果出錯的話,就將books改成mysite.books,我用的是books,沒有問題

執行

python manage.py syncdb

執行這個命令後,將看到類似以下的內容:

Creating table books_publisher
Creating table books_author
Creating table books_book
Installing index for books.Book model

這時進入mysql,可以檢視這些表已經建立

最後 將你的Models加入到Admin管理中

admin.py

[python] view plaincopyprint?在CODE上檢視程式碼片派生到我的程式碼片
  1. from django.contrib import admin  
  2. # Register your models here.
  3. from books.models import Publisher, Author, Book  
  4. class AuthorAdmin(admin.ModelAdmin):  
  5.     list_display=('first_name','last_name','email')  
  6.     search_fields=('first_name','last_name')  
  7. admin.site.register(Publisher)  
  8. admin.site.register(Author,AuthorAdmin)  
  9. admin.site.register(Book)  
from django.contrib import admin

# Register your models here.
from books.models import Publisher, Author, Book

class AuthorAdmin(admin.ModelAdmin):
	list_display=('first_name','last_name','email')
	search_fields=('first_name','last_name')

admin.site.register(Publisher)
admin.site.register(Author,AuthorAdmin)
admin.site.register(Book)



當這一切都配置好後,現在你將發現Django管理工具可以運行了。 啟動開發伺服器(如前:`` python manage.py runserver`` ),然後在瀏覽器中訪問:http://127.0.0.1:8000/admin/

就是簡單的使用者登入,然後就可以看到資料庫的表,可以視覺化的操作這些表了~

Django的MVC架構

M: 即model,資料存取部分,由django資料庫層處理

V: 即View,選擇顯示哪些資料要及怎樣顯示的部分,由檢視和模板處理

C: 即Control,根據使用者輸入委派檢視的部分,由 Django 框架通過按照 URLconf 設定,對給定 URL 呼叫合適的 python 函式來自行處理。

相關推薦

django開發基本網頁使用MySQL

 開始一個專案 開啟cmd ,進入django的開發目錄(自己按個人習慣建議個開發目錄) ~/django-admin.pystartprojectmysite,注意,這裡的django-admin.py要輸入絕對路徑       這樣就會在當前目錄下建立一個目錄 my

Django開發之登陸登出

coo .com password art post方法 沒有 必須 創建 ref 使用django自帶的驗證模塊 1、首先使用python manage.py startapp models為當前項目添加一個應用。 2、在setting.py中INSTALLED_APPS

Django基本配置 工作流程 各檔案作用

Django工作流程 啟動Django,等待使用者連線 瀏覽器輸入URL,連線Django專案 在urls.py中,匹配路徑對應的函式 執行匹配的函式 返回響應 settings.py檔案 templates資料夾位置 靜態檔案 STATIC_

django框架開發一個B2C購物網站的基本流程用到的知識點總結1

value 後端開發 .site elf pan 直接 基本 inter mobile 開發流程 開發模式采用前後端分離模式,作為後端開發人員我們只關註後端業務邏輯開發: 省略項目框架搭建文件的配置部分。。。。 一:用戶部分 在項目開發中我們要用到用戶模型類User,Dj

python之Django學習筆記(一)---搭建Django開發環境一些基本命令

system cfile 生成 ont superuser 如果 session username ins 1、Django下載 官方下載地址:https://www.djangoproject.com/download/ 2、Django安裝 linux/wind

微信小程序開發 [01] 小程序基本結構官方IDE簡介

nload 式表 個人開發者 才會 表示 com -h storage sources 1、小程序賬戶註冊實際上在進行開發時沒有註冊小程序賬戶也是可以的,官方提供的IDE提供實時編譯模擬預覽,和當前你有沒有綁定小程序賬戶沒有關系。當然,最終你要正式上線你的小程序的話,肯定還

MySQL數據庫學習【第二篇】基本操作存儲引擎

my.cnf 默認 ctu 管理系 int 建立 系統 管理 種類型 一、知識儲備 數據庫服務器:一臺計算機(對內存要求比較高) 數據庫管理系統:如mysql,是一個軟件 數據庫:oldboy_stu,相當於文件夾 表:student,scholl,class_list,相

Mysql-常用數據的基本操作基本形式

upd HERE let 管理 root mysql- roo db2 values 一 、介紹 二 、插入數據INSERT 三 、更新數據UPDATE 四 、刪除數據DELETE 五 、查詢數據SELECT 六 、權限管理 一、 介紹 MySQL

Django爬蟲基本原理及RequestResponse分析

detail 密碼 href Go 模塊 ica 正則表達式 ons CI 一、爬蟲互聯網是由網絡設備(網線,路由器,交換機,防火墻等等)和一臺臺計算機連接而成,像一張網一樣。互聯網的核心價值在於數據的共享/傳遞:數據是存放於一臺臺計算機上的,而將計算機互聯到一起的目的就是

聊聊Spring boot2.X開發環境搭建基本開發

nat profile c中 ddb 被占用 bae nor 可能 占用 對Spring Boot的開發環境進行搭建,並對它的特點做進一步的了解,才能更好地對Spring Boot有更深入的介紹。但是無論如何都需要先來搭建Spring Boot的工程。搭建Spring Bo

二、mysql資料庫之基本操作儲存引擎

一、知識儲備 資料庫伺服器:一臺計算機(對記憶體要求比較高) 資料庫管理系統:如mysql,是一個軟體 資料庫:oldboy_stu,相當於資料夾 表:student,scholl,class_list,相當於一個具體的檔案 記錄:1 susan &nb

微信小程式開發day02——小程式的基本功能作用

微信小程式自學02 一、建立小程式 二、瞭解小程式的基本功能和作用        1、小程式的啟動        開啟小程式時,就已經將小程式的所有程式碼打包下載到

微信小程式開發day01——小程式的頁面基本認識屬性

微信小程式學習筆記(1) 一、申請個人賬號 二、安裝開發者工具 三、申請程式 四、閱讀幫助文件        1.簡單認識基本結構以及頁面      app.json【全域性配置

mysql基本操作資料型別

一.初始mysql語句 操作資料夾   增 create database db1 charset utf8   查 #檢視當前建立的資料庫 show create database db1; #檢視所有的資料庫 show databases;   改 alter

微信公眾號開發獲取openid使用者基本資訊還有發訊息的TP3.23方法類

<?php namespace Home\Controller; use Think\Controller; /** * */ class WeixinController extends Controller { var $tokenFile; const ap

MySQL開發基本知識點

前言: 對於之前所學mysql內容進行回顧,比較分散,沒有什麼條理。主要對mysql進行開始時應瞭解的基本知識進行記錄。 知識點: 1.主流版本: 5.4-5.x使用最多,整合了三方公司新儲存引擎(5.5) 虛擬機器(安裝包上傳到虛擬機器),虛擬機器cmd介面 2.安裝: r

django 開發之模型以及靜態問題圖片的使用

使用Django的模型,基本步驟: 1.建立model 2.加入到admin.py中去 3.執行生成遷移:python manage.py makemigrations blog 4.執行遷移,生成表單   需要注意的是第二步,一定要加入APP相應的adimn.py 上去,再執行遷移

Django 建立APPMysql資料庫連線

軟體版本:Django 1.11.11 Python:3.7.1 pip3:10.0.1 安裝Django,首先確保python和pip在環境變數中 pip install Django==1.11.11 目錄結構: 其中:settings.py是設定檔案: 例如

MySQL基本原理使用技巧

本文是我在大半年前在前公司做團隊分享時的一個文件,寫得比較挫,當時分享講了2個小時,自己感覺講得還可以。最近前同事跑來問我還有沒有文件儲存,翻了舊電腦和硬碟才找出來,於是就想著分享一下。 一、MySQL整體結構 伺服器層(負責客戶端連線、授權認證、安全、執行緒管理等)

開發除錯】谷歌瀏覽器中除錯移動網頁測試網速下頁面效果

、    今天有幸給大家分享一下谷歌瀏覽器針對移動網頁測試的技巧,主要是最近做個微信公共號網站。所以就要對頁面測試拉。移動網頁我們最長測得就是各種手機大小的頁面效果和出現網路問題的效果展示。 今天就簡單分享下在谷歌瀏覽器測試頁面的適配和網速限制展示。 頁面的適配 自帶的手機模式 首先開啟谷歌瀏覽器按F