Django初學總結(二)

2021-09-02 11:38:57 字數 1620 閱讀 2439

開發模式:

專案和應用的建立:

設計資料庫和表結構是做**的基礎,因為python和django能夠直接完成這些操作,所以可以不需要設定先。

建立應用後,利用django開發**系統要寫在./blog/models.py中寫乙個類,這個類與資料庫中的資料表具有對應關係。

一下為編寫blog的資料模型類,本質上是乙個繼承了django.db.models.model的類

from django.db import models

from django.utils import timezone

from django.contrib.auth.models import user

class blogarticles(models.model):

title = models.charfield(max_length=300)

author = models.foreignkey(user, related_name="blog_posts", on_delete=models.cascade) #比書上增加了個on_delete,

body = models.textfield()

publish = models.datetimefield(default=timezone.now)

class meta:

ordering = ("-publish",) //規定了blogarticles的例項物件的顯示順序,即按照publish字段值的倒序顯示

def __str__(self):

return self.title

在/mysite/manage.py位置執行python manage.py makemigrations

便會在blog/migrations目錄中建立了乙個blogarticles模型。以上建立了乙個能夠建立資料庫表的檔案,然後就執行

python manage.py migrate
如此就建立了資料庫。

python manage.py createsuperuser
from django.contrib import admin

from .models import blogarticles //將blogarticles類引入當前環境

admin.site.register(blogarticles, blogarticlesadmin) //將該類註冊到admin中

為了使得顯示更加豐富可以繼續在./blog/admin.py中寫入。

class blogarticlesadmin(admin.modeladmin):

list_display = ("title", "author", "publish")

list_filter = ("publish", "author")

search_fields = ('title', "body")

raw_id_fields = ("author",)

date_hierarchy = "publish"

ordering = ['publish', 'author']

lex初學總結(二)

iii.lex 格式 這裡以乙個能分析類似c語言的lex程式原始碼 注釋來說明。在這裡定義re表示式 keyword if while do break true false int char bool real float switch case digit 0 9 letter a za z s...

Django之初學習

由於工作原因接觸第乙個web框架,故在這裡簡記!django 是乙個由 python 編寫的乙個開放源 的 web 應用框架。使用 django,只要很少的 python 的程式開發人員就可以輕鬆地完成乙個正式 所需要的大部分內容,並進一步開發出全功能的 web 服務 django 本身基於 mvc...

Django知識點總結 二

1.django的模板系統 render to response import django.shortcuts.render to response render to response的第乙個引數必須是模板.如果給定第二個引數,第二個引數必須是為該模板建立context時所用的字典 如果不提供第...