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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

6章 Models

發(fā)布時(shí)間:2023/12/10 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 6章 Models 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

傳統(tǒng)的MVC結(jié)構(gòu)中,有模型這么一個(gè)概念。Django中,Models又是怎么一回事呢?

?

剛才生成的這些亂七八糟的數(shù)據(jù)遷移就是Django自帶的一些應(yīng)用

INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles',

創(chuàng)建的數(shù)據(jù)遷移

?執(zhí)行python manage.py makemigrations,Django會(huì)在app/migrations/目錄下生成移植文件blog\migrations\0001_initial.py和blog2\migrations\0001_initial.py

?因?yàn)閯倓偽覀儎?chuàng)建的那個(gè)模型,我們沒有給它添加主鍵。于是Django呢幫我們創(chuàng)建了這么一個(gè)字段用來當(dāng)做我們這個(gè)模型的主鍵。所以呢如果我們自己手動(dòng)添加主鍵,這個(gè)id呢也就不會(huì)自動(dòng)生成了。這個(gè)id還是挺好用的。

# Generated by Django 2.0.5 on 2018-05-18 14:07from django.db import migrations, modelsclass Migration(migrations.Migration):initial = Truedependencies = []operations = [migrations.CreateModel(name='Article',fields=[('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),('title', models.CharField(default='Title', max_length=32)),('content', models.TextField(null=True)),],),] # Generated by Django 2.0.5 on 2018-05-18 14:07from django.db import migrations, modelsclass Migration(migrations.Migration):initial = Truedependencies = []operations = [migrations.CreateModel(name='Article',fields=[('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),('title', models.CharField(default='Title', max_length=32)),('content', models.TextField(null=True)),],),]

生成的數(shù)據(jù)表的SQL語句是可以看的。

這個(gè)文件id就是0001或者是0002這些。

使用Django默認(rèn)的sqlite3數(shù)據(jù)庫

這個(gè)就是我們的數(shù)據(jù)庫sqlite3

大部分都是Django自動(dòng)生成的數(shù)據(jù)表。前面的blog前綴是Django自動(dòng)添加的。rowid是這個(gè)軟件自動(dòng)加的一個(gè)東西。第二個(gè)id就是我們的主鍵。

?

Django的模板語言不但支持字符串之類的那種傳統(tǒng)的數(shù)據(jù)傳遞,也支持這種對(duì)象的傳遞。

blog\views.py

# -*- coding: utf-8 -*- from __future__ import unicode_literalsfrom django.shortcuts import render# Create your views here.#from django.shortcuts import render from django.http import HttpResponse from . import models def index(request):#return HttpResponse('Hello, world!');#return render(request,'index.html',{'hello': 'Hello,Blog'})article = models.Article.objects.get(pk=1)#return render(request, 'blog/index.html')return render(request, 'blog/index.html',{'article':article})

blog2\views.py

# -*- coding: utf-8 -*- from __future__ import unicode_literals from django.shortcuts import render# Create your views here. from . import models def index(request):#return render(request, 'blog2/index.html')article = models.Article.objects.get(pk=1)return render(request, 'blog2/index.html',{'article':article})

后臺(tái)代碼我們就寫完了

剛才傳遞了這么一個(gè)對(duì)象article到前端模板,而在模板中調(diào)用實(shí)例成員的方法和后臺(tái)是一樣的,就用這個(gè).操作符。

blog\index.html

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>Title</title> </head> <body> <!-- <h1>Hello,Blog</h1> --> <!-- <h1>Hello,Blog! </h1> --> <h1>{{ article.title }}</h1> <h3>{{ article.content }}</h3> </body> </html>

blog2\index.html

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>Title</title> </head> <body> <!-- <h1>Hello,Blog</h1> --> <!-- <h1>Hello,Blog2!</h1> --> <h1>{{ article.title }}</h1> <h3>{{ article.content }}</h3> </body> </html>

這個(gè)就是Django的模型models的一些基本用法。

轉(zhuǎn)載于:https://www.cnblogs.com/ZHONGZHENHUA/p/9058081.html

總結(jié)

以上是生活随笔為你收集整理的6章 Models的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。