日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

django 学习笔记

發布時間:2025/7/25 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 django 学习笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
django 學習筆記

啟動虛擬機:

workon bj18_py3

創建一個項目:

django-admin.py startproject mysite

啟動開發用服務器:從外層項目 mysite 目錄切換進去,若準備好了就運行命令:

python manage.py runserver

python manage.py runserver 8080

python manage.py runserver 0.0.0.0:8000 你將會看到命令行輸出如下內容:? Performing system checks...? 0 errors found? May 13, 2015 - 15:50:53? Django version 1.8, using settings 'mysite.settings'? Starting development server at http://127.0.0.1:8000/? Quit the server with CONTROL-C. ?? 請在你的 Web 瀏覽器中訪問 http://127.0.0.1:8000/。你會看到一個令人愉悅的,柔和的淡藍色 “Welcome to Django” 頁面。它工作正常! 也可以指定 ?python manage.py runserver 0.0.0.0:8001 ? 指定地址和端口。 數據庫設置: 以mysql數據庫為例,編輯 mysite/settings.py。 DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql',
'NAME': 'mysite_db', #使用數據庫名稱,數據庫必須提前創建好'USER': 'root', #鏈接數據庫的用戶名'PASSWORD': 'itcast', #鏈接數據庫的密碼'HOST':'localhost', #配置數據庫的ip地址'PORT':'3306', #配置數據庫的端口號 } }

這時,啟動開發服務器出錯,原因是缺少MySQLdb模塊,用pip list 命令查看,

(bj18_py3) python@ubuntu:~/bj18/mysite$ pip list Package Version ------------- ------- Django 1.8.2 pip 19.1.1 pkg-resources 0.0.0 PyMySQL 0.9.3 setuptools 41.0.1 wheel 0.33.1

這時,python3需要用pip install pymysql 安裝。安裝成功后在__init__.py文件加入:

?

import pymysql pymysql.install_as_MySQLdb()

?

然后啟動開發用服務器。

創建模型: 項目 ( Projects ) vs. 應用 ( apps ) 項目與應用之間有什么不同之處?應用是一個提供功能的 Web 應用 – 例如:一個博客系統、一個公共記錄的數據庫或者一個簡單的投票系統。 項目是針對一個特定的 Web 網站相關的配置和其應用的組合。一個項目可以包含多個應 用。一個應用可以在多個項目中使用。

?

要創建你的應用,請確認與 manage.py 文件在同一的目錄下并輸入以下命令:

python manage.py startapp polls

在這簡單的投票應用中,我們將創建兩個模型: Poll 和 Choice 。 Poll 有:問題和發布日期兩個字段。 Choice 有兩個字段: 選項 ( choice ) 的文本內容和投票數。每一個 Choice 都與一個 Poll 關聯。這些概念都由簡單的 Python 類來表現。編輯 polls/models.py 文件后如下所示:

class Question(models.Model):
??? question_text = models.CharField(max_length=200)????????? #一些 Field 實例是需要參數的。 例如 CharField 需要你指定~django.db.models.CharField.max_length 。
??? pub_date = models.DateTimeField('date published')??? #你可以在初始化 Field 實例時使用第一個位置的可選參數來指定人類可讀的名字。這在Django的內省部分中被使用到了,而且兼作文檔的一部分來增強代碼的可讀性。若字段未提供該參數,Django 將使用符合機器習慣的名字。在本例中,我們僅定義了一個符合人類習慣的字段名 Poll.pub_date 。對于模型中的其他字段,機器名稱就已經足夠替代人類名稱了。
class Choice(models.Model):
??? poll = models.ForeignKey(Question)?????????????????????? #定義了一個關聯。它告訴 Django 每一個 Choice 關聯一個 Poll 。
??? choice_text = models.CharField(max_length=200)
??? votes = models.IntegerField(default=0)?????????????? #一個 Field 實例可以有不同的可選參數; 在本例中,我們將 votes 的 default 的值設為 0。

?Django 支持常見數據庫的所有關聯:多對一(many-to-ones ),多對多( many-to-manys ) 和 一對一 ( one-to-ones )。

? 激活模型 有了這些模型代碼 Django 就可以做:為該應用創建對應的數據庫架構 (CREATE TABLE statements) 。 為 Poll 和Choice 對象創建 Python 訪問數據庫的 API 。 首先,我們需要告訴我們的項目已經安裝了 polls 應用。再次編輯 settings.py 文件,在 INSTALLED_APPS 設置中加入 'polls' 字符。因此結果如下所示: INSTALLED_APPS = ('django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','polls', ) 現在 Django 已經知道包含了 polls 應用。讓我們運行如下命令: python manage.py makemigrations #生成遷移文件
python mange.py migrate #執行遷移生成表

?

進入管理網站: 在sattings.py設置本地化 LANGUAGE_CODE = 'zh-CN'TIME_ZONE = 'Asia/Shanghai'

?

?設置超級管理員賬戶密碼 python manage.py syncdb

python manage.py createsuperuser#創建超級用戶 我們需要告訴管理網站 Poll 對象要有一個管理界面。為此,我們在你的 polls 目錄下創建一個名為 admin.py 的文件,并添加如下內容: from django.contrib import admin from polls.models import Question,Choice
class QuestionAdmin(admin.ModelAdmin):
??? list_display = ["id","question_text","pub_date"]
class ChoiceAdmin(admin.ModelAdmin):
??? list_display = ["id","choice_text","votes","poll_id"]
admin.site.register(Question,QuestionAdmin)
admin.site.register(Choice,ChoiceAdmin)

?修改models.py文件,返回名字:

class Question(models.Model):question_text = models.CharField(max_length=200) #一些 Field 實例是需要參數的。 例如 CharField 需要你指定~django.db.models.CharField.max_length 。pub_date = models.DateTimeField('date published') #你可以在初始化 Field 實例時使用第一個位置的可選參數來指定人類可讀的名字。這在Django的內省部分中被使用到了,而且兼作文檔的一部分來增強代碼的可讀性。若字段未提供該參數,Django 將使用符合機器習慣的名字。在本例中,我們僅定義了一個符合人類習慣的字段名 Poll.pub_date 。對于模型中的其他字段,機器名稱就已經足夠替代人類名稱了。def __str__(self):return self.question_text class Choice(models.Model):poll = models.ForeignKey(Question) #定義了一個關聯。它告訴 Django 每一個 Choice 關聯一個 Poll 。choice_text = models.CharField(max_length=200)votes = models.IntegerField(default=0) #一個 Field 實例可以有不同的可選參數; 在本例中,我們將 votes 的 default 的值設為 0。def __str__(self):return self.choice_text

?

?

? ? ? ? ? ? ? ? posted on 2019-07-03 07:17 qiaoliang0302 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/ql0302/p/11124158.html

總結

以上是生活随笔為你收集整理的django 学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。