日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747



1創建web服務器:

使用cmd命令進入到存放項目的目錄中執行以下命令:

Python django-admin.py startproject mysite

成功后會在目錄中出現 mysite 目錄,此處創建的為開發服務器

2創建App:

一個項目中包含一個或多個這樣的app。app可以理解為一塊功能集合。比如產品管理模塊就包含增刪該查等功能,可以把產品管理叫做一個app。每個Django app都有獨立的models,views等,易移植和被復用

使用cmd命令進入到mysite目錄下(創建的web服務器目錄)執行以下命令

python manage.py startapp test_pr

test_pr才是web應用程序

3創建模板文件的目錄

在項目根目錄下新建一個templates目錄

4目錄文件說明

子目錄mysite下表示工程的全局配置,分別為setttings.py、urls.py和wsgi.py,其中setttings.py包括了系統的數據庫配置、應用配置和其他配置,urls.py則表示web工程Url映射的配置。

子目錄test_pr則是在該工程下創建的app,包含了models.py、tests.py和views.py等文件

templates目錄則為模板文件的目錄

manage.py是Django提供的一個管理工具,可以同步數據庫等等

-----------------------------------------------------------------------------------------------------------------------------------------------

Django 里更關注的是模型(Model)、模板(Template)和視圖(Views),Django 也被稱為 MTV 框架 。

在 MTV 開發模式中:

M 代表模型(Model),即數據存取層。該層處理與數據相關的所有事務:如何存取、如何確認有效性、包含哪些行為以及數據之間的關系等

  T 代表模板(Template),即表現層。該層處理與表現相關的決定:如何在頁面或其他類型文檔中進行顯示。

  V代表View,業務邏輯層。這一層包含訪問模型的邏輯和按照模板顯示。你可以認為它是模型和模板的橋梁。

系統對app有一個約定:如果你使用了Django的數據庫層(模型),你 必須創建一個django app。模型必須在這個app中存在。

5啟動

在cmd中進入項目目錄(cd d:*/mysite ),執行以下命令:

python manage.py runserver 0.0.0.0:8000

在瀏覽器中輸入 127.0.0.1:8000,若能成功訪問則表示啟動成功

6添加web工程頁面

打開test_pr/views.py文件,輸入以下內容

from django.http import HttpResponse

def sayHello(request):

s = 'Hello World!'

current_time = datetime.datetime.now()

html = '<html><head></head><body><h1> %s </h1><p> %s </p></body></html>' % (s, current_time)

return HttpResponse(html)

7url映射的配置

打開url.py文件

from django.conf.urls import url

from test_pr import views

urlpatterns = [

# url(r'^admin/', admin.site.urls),

url(r'^$', views.sayHello),

]

重啟服務,訪問http://localhost:8000/

8邏輯和頁面分離

8.1在模板目錄下創建一個student.html文件,并寫入以下代碼

<!DOCTYPE html>

<html>

<head>

<title>hello</title>

</head>

<body>

<ul>

{% for student in students %}

<li>

id:{{ student.id }},姓名:{{ student.name }},age: {{ student.age }}

</li>

{% endfor %}

</ul>

</body>

</html>

8.2修改 views.py文件,添加方法showStudents()

def showStudents(request):

list = [{id: 1, 'name': 'Jack'}, {id: 2, 'name': 'Rose'}]

return render_to_response('student.html',{'students': list})

8.3.添加url映射,打開url.py文件

from django.conf.urls import url

from test_pr import views

urlpatterns = [

# url(r'^admin/', admin.site.urls),

url(r'^$', views.sayHello),

url(r'^showStudents$', showStudents),

]

8.4.修改settings.py模板配置:'DIRS': [BASE_DIR+r'templates'],

TEMPLATES = [

{

'BACKEND': 'django.template.backends.django.DjangoTemplates',

'DIRS': [BASE_DIR+"/templates", ],

'APP_DIRS': True,

'OPTIONS': {

'context_processors': [

'django.template.context_processors.debug',

'django.template.context_processors.request',

'django.contrib.auth.context_processors.auth',

'django.contrib.messages.context_processors.messages',

],

},

},

]

8.5.重啟服務,訪問http://localhost:8000/showStudents,出現:

原文:http://code.ziqiangxuetang.com/django/django-models.html

9.連接數據庫

首先需要安裝數據庫驅動啦,即MySQL_python,

如果你沒安裝 mysql 驅動,可以執行以下命令安裝:

pip install mysqlclient

9.1配置數據庫連接,打開settings.py文件編寫代碼

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql', //數據庫的類型

'NAME': 'mysite', //所使用的的數據庫的名字

'USER': 'root', //數據庫服務器的用戶

'PASSword': '123456', //密碼

'HOST': 'localhost', //主機

'PORT': '3306', //端口

}

}

修改完后進入DOS進入項目目錄下執行python manage.py shell命令啟動交互界面輸入一下代碼驗證數據庫配置是否成功。沒報錯則成功!

>>> from django.db import connection

>>> cursor = connection.cursor()

10.創建模型

在Django中使用數據庫布局的第一步是將其表述為Python代碼。

文件中每個class相當于單個數據庫表,每個屬性也是這個表中的一個字段。 屬性名就是字段名,它的類型(例如 CharField )相當于數據庫的字段類型 (例如 varchar )。

10.1打開test_pr目錄下的models.py

# -*- coding: utf-8 -*-

from __future__ import unicode_literals

from django.db import models

# Create your models here.

class Student(models.Model):

name = models.CharField(max_length=20)

字段

1、models.AutoField  自增列= int(11)

  如果沒有的話,默認會生成一個名稱為 id 的列,如果要顯示的自定義一個自增列,必須將給列設置為主鍵 primary_key=True。

2、models.CharField  字符串字段

  必須 max_length 參數

3.models.DateField  日期類型 date

  對于參數,auto_now =True則每次更新都會更新這個時間;auto_now_add 則只是第一次創建添加,之后的更新不再改變。

4.models.DateTimeField  日期類型 datetime

  同DateField的參數

5.models.EmailField  字符串類型(正則表達式郵箱)=varchar

  對字符串進行正則表達式

6.models.FloatField  浮點類型= double

7.models.IntegerField  整形

8.models.SmallIntegerField  數字

  數據庫中的字段有:tinyint、smallint、int、bigint

9、models.TextField  字符串=longtext

10、models.TimeField  時間 HH:MM[:ss[.uuuuuu]]

11、models.URLField  字符串,地址正則表達式

12、models.BinaryField  二進制

13、models.ImageField圖片

14、models.FilePathField文件

參數

1、null=True

  數據庫中字段是否可以為空

2、blank=True

  django的Admin中添加數據時是否可允許空值

3、primary_key =False

  主鍵,對AutoField設置主鍵后,就會代替原來的自增 id 列

4、auto_now 和 auto_now_add

  auto_now 自動創建---無論添加或修改,都是當前操作的時間

  auto_now_add 自動創建---永遠是創建時的時間

5、choices

GENDER_CHOICE =(

(u'M', u'Male'),

(u'F', u'Female'),

)

gender = models.CharField(max_length=2,choices = GENDER_CHOICE)

6、max_length

7、default  默認值

8、verbose_name  Admin中字段的顯示名稱

9、name|db_column  數據庫中的字段名稱

10、unique=True  不允許重復

11、db_index =True  數據庫索引

12、editable=True  在Admin里是否可編輯

11. 激活 模型

打開settings.py 文件,找到 INSTALLED_APPS 設置,NSTALLED_APPS 告訴 Django 項目哪些 app 處于激活狀態

INSTALLED_APPS = (

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.sites',

'test_pr',

)

12.將新建的models同步數據庫

# Django 1.7 及以上的版本需要用以下命令

-----------------------------------------------------------------------------------------------------------------

步驟里面第一步將會在查詢當前MySQL和本地的models的差異,生成合并的代碼。

第二步是將合并代碼導入數據庫。

cmd進入項目目錄執行以下命令:

python manage.py makemigrations

python manage.py migrate

# Django 1.6.x 及以下

----------------------------------------------------------------------------------------------------------------

用下面的命令對校驗模型的有效性:

python manage.py validate

看到 0 errors found 消息,一切正常。繼續:

運行下面的命令來生成 CREATE TABLE 語句:

python manage.py sqlall test_pr

sqlall 命令并沒有在數據庫中真正創建數據表,只是把SQL語句段打印出來。

運行 syncdb 命令創建表

python manage.py syncdb

--------------------------------------------------------------------------------------------------------

所有的數據庫查找都遵循一個通用模式:調用模型的管理器來查找數據。

13.models對數據庫增刪查改

原文:http://python.usyiyi.cn/translate/django_182/ref/models/instances.html

打開models.py文件

方式一:

from django.db import models

class Student(models.Model):

name= models.CharField(max_length=20)

@classmethod

def create(cls, name

student = cls(name=name)

# do something with the book

return student

student = Student.create("zhansan")

方式二(推薦):

from django.db import models

# Create your models here.

class Student(models.Model):

# 如果沒有models.AutoField,默認會創建一個id的自增列

name = models.CharField(max_length=20)

# model的字符串表現形式

def __unicode__(self):

return self.name

objects = StudentManager()

class StudentManager(models.Manager):

def create_student(self, name):

student = self.create(name=name)

# do something with the book

return student

原文:https://my.oschina.net/leeyd/blog/367688

增:create()

objects.create(name = 'test') # 新增name字段的值為test

刪:delete()

objects.all().delete() # 刪除表中全部數據

objects.get(aa='test').delete() # 刪除一條aa等于'test'的數據

objects.filter(aa='123').delete() #過濾出aa字段等于123的都刪除

改:update()

get(id=id).update(name=name)

查:all()、get()

get(id=id) # 查詢單條數據

filter(name=name) # 查詢匹配條件的多條數據

filter(name__contains=name) # 模糊查詢;name為查詢的字段名

filter(name__contains=name)[0:5] # [0]顯示第一條 [0:2]會顯示前兩條,切片不支持負數

dome

# models.py

# -*- coding: utf-8 -*-

from __future__ import unicode_literals

from django.db import models

class StudentManager(models.Manager):

def create_student(self, name):

# 方式一

# student = Student(name = name)

# # 保存到數據庫

# student.save()

# 方式二(推薦)

student = self.create(name=name)

return student

def select_all(self):

# 查詢全部

list = self.all()

return list

def select_one(self, name):

# a = []

# # 查詢單條數據

# student = self.get(id=id)

# a.append(student)

# return a

# 查詢匹配條件的多條數據

# student = self.filter(name=name)

# 模糊查詢

student = self.filter(name__contains=name)

# 根據字段內容排序后展示數據,根據字段內容逆向排序后展示數據,加一個負號order_by('-name')

tt = student.order_by('name')

# 限制數據條數, 相當于mysql limit

tt1 = self.filter(name__contains=name)[0:5] # [0]顯示第一條 [0:2]會顯示前兩條,切片不支持負數

return tt1

def updata_student(self, id, name):

self.get(id=id).update(name=name) # update可多條update(name=name, bb="wahaha")

# Create your models here.

class Student(models.Model):

# 如果沒有models.AutoField,默認會創建一個id的自增列

name = models.CharField(max_length=20)

# model的字符串表現形式

def __unicode__(self):

return self.name

objects = StudentManager()

分享到:
標簽:python django
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定