Django web 开发常用命令、后台管理界面定制

一、前言

记录与分享

二、常用命令

1.创建应用

(venv) C:\Users\linhongcun\PycharmProjects\untitled>python manage.py startapp booktest
这里写图片描述

2.开启项目

(venv) C:\Users\linhongcun\PycharmProjects\untitled>python manage.py runserver 8080
这里写图片描述

3.生成迁移文件

(venv) C:\Users\linhongcun\PycharmProjects\untitled>python manage.py makemigrations
这里写图片描述
这里写图片描述

4.执行迁移文件

(venv) C:\Users\linhongcun\PycharmProjects\untitled>python manage.py migrate
这里写图片描述

5.进行模型API练习

(venv) C:\Users\linhongcun\PycharmProjects\untitled>python manage.py shell
这里写图片描述

6.进入后台管理

(venv) C:\Users\linhongcun\PycharmProjects\untitled>python manage.py createsuperuser

访问URL:http://IP:8080/admin

这里写图片描述
这里写图片描述
这里写图片描述

7、生成 requirements.txt 文件

这个命令主要在部署项目到云服务器时要用到,使生产环境的版本和开发环境的一致,项目才能正常运行。
(venv) C:\Users\linhongcun\PycharmProjects\djapp>pip3 freeze > requirements.txt
这里写图片描述
这里写图片描述

查看依赖包
(venv) C:\Users\linhongcun\PycharmProjects\djapp>pip list
这里写图片描述

三、后台管理界面定制

from django.contrib import admin
from .models import  BookInfo,HeroInfo,HeroInfo # 注意 model 前面有一个点

class HeroInfoInline(admin.TabularInline):# StackedInline 属性占一行、TabularInline 属性表格形式
    model = HeroInfo
    # 添加的时候显示的个数,可再增加
    extra = 2

# 设置模型列表显示的字段
class BookAdmin(admin.ModelAdmin):
    # 显示
    list_display = ['id','btitle','bpub_date']
    # 过滤
    list_filter = ['btitle']
    # 搜索
    search_fields = ['btitle']
    # 分组显示
    fieldsets = [
        ('basic',{'fields': ['btitle']}),
        ('more', {'fields': ['bpub_date']}),
    ]
    # 外键
    inlines = [HeroInfoInline]

# 注册到后台管理
admin.site.register(BookInfo,BookAdmin)
admin.site.register(HeroInfo)

这里写图片描述

四、问题与解决

from models import Article引入报错,找不到models为啥

Django在根据models生成数据库表时报 init() missing 1 required positional argument: ‘on_delete’

五、Django项目部署

centos7下部署Django(nginx+uwsgi+python3+django)
Django运行项目时候出现DisallowedHost at

六、文档

Django 中文文档(1.6)

猜你喜欢

转载自blog.csdn.net/larger5/article/details/80873215