《Django3项目精讲》学习,第一课基础准备

2021年7月10日00:00:35 评论 571

Django3项目精讲

第一章 构建博客应用程序

1.基础准备

 //安装django模块
 pip install "django==3.0.4"
 //创建项目
 django-admin startproject mysite
 //创建应用,同时在settings.py里面配置
 python manage.py startapp blog

2.设计博客数据方案

 from django.db import models
 
 # Create your models here.
 from django.utils import timezone
 from django.contrib.auth.models import User
 
 
 class Post(models.Model):
     STATUS_CHOICES=(
         ('draft','Draft'),
         ('published','Published'),
     )
 
     title=models.CharField(max_length=250)
     slug=models.SlugField(max_length=250,unique_for_date='publish')
     author=models.ForeignKey(User,on_delete=models.CASCADE,related_name='blog_posts')
     body=models.TextField()
     publish=models.DateTimeField(default=timezone.now)
     created=models.DateTimeField(auto_now_add=True)
     updated=models.DateTimeField(auto_now=True)
     status=models.CharField(max_length=10,choices=STATUS_CHOICES,default='draft')
 
     class_Meta:   //元数据,显示排序
         ordering=('-publish')
 
     def __str__(self): //默认人们可读的对象表达方式
         return self.title
 //创建数据库模型表
 python manage.py migrate
 python manage.py makemigrations blog 
 //查看执行的SQL语句
 pytho manage.py sqlmigrate blog 0001

3.针对模型创建管理站点

 //创建管理员账户
 python manage.py createsuperuser
 //管理站点注册,显示在后台。admin.py
 from django.contrib import admin
 from .models import Post
 
 admin.site.register(Post)

《Django3项目精讲》学习,第一课基础准备

定制显示模式

《Django3项目精讲》学习,第一课基础准备

 from django.contrib import admin
 
 # Register your models here.
 from .models import Post
 
 @admin.register(Post)  //注册其所装饰的类
 class PostAdmin(admin.ModelAdmin):
     list_display=('title','slug','author','publish','status')//展示
     list_filter=('status','created','publish','author') //过滤
     search_fields=('title','body') //搜索范围
     prepopulated_fields={'slug':('title',)} //预填充,文章发表页
     raw_id_fields=('author',) //显示Id,文章发表页
     date_hierarchy='publish' //归类按发布时间
     ordering=('status','publish')  //排序
 

《Django3项目精讲》学习,第一课基础准备

《Django3项目精讲》学习,第一课基础准备

阿成哥
  • 本文由 发表于 2021年7月10日00:00:35
  • 转载请务必保留本文链接:https://blog.acwang.com/832.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: