python-django学习足迹(五)

在应用下创建模板文件夹

需要创建和项目下的模板文件名相同的名字(原因:  'APP_DIRS': True,)

在模板设置下的 'APP_DIRS': True,表示在应用下寻找与项目下同名的文件夹

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(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',
            ],
        },
    },


由于多个应用下的templates都同名

需要在应用下创建一个文件夹  

这里写图片描述


Django下创建管理员用户名和密码

(venv) F:\PythonWorkPlace\demo1>python manage.py createsuperuser

Username (leave blank to use 'administrator'): admin_name

Email address: 123456@qq.com

Password:

Password (again):

Superuser created successfully.


(venv) F:\PythonWorkPlace\demo1>

关于django站点的管理员管理

找到项目下路由中admin(可改写)的路径

打开路径使用账号密码登录站点管理页面

这里写图片描述

修改设置   汉化   settings.py

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

USE_I18N = True

USE_L10N = True

USE_TZ = True

将数据库表数据存入站点

models.py


from django.db import models

# Create your models here.


class Student(models.Model):
    name = models.CharField(max_length=32)
    age = models.IntegerField()
    score = models.FloatField()
    hobby = models.CharField(max_length=32)

    def __str__(self):
        return self.name



admin.py


from django.contrib import admin

from .models import Student

# Register your models here.

# 注册数据模型
'''
    管理员对站点的管理
'''
admin.site.register(Student)



这里写图片描述

models.py 中类中写入 str方法后

这里写图片描述

站点模型管理类


from django.contrib import admin
from django.contrib.admin import ModelAdmin

from .models import Student

# Register your models here.


# 创建一个管理模型的类
class Student_admin(ModelAdmin):
    list_display = ('name','age','score','hobby')



# 注册数据模型
'''
    管理员对站点的管理
    register 第一个参数: 将数据库表通过类的形式添加到站点
            第二个参数: 管理模型类(继承ModelAdmin)  类中定义数据怎么排版

            如果没有第二个参数则默认django内部的模型管理类
            该类list_display = '__str__'

'''
admin.site.register(Student,Student_admin)




这里写图片描述

默认的第二个参数 模型管理类

这里写图片描述

默认模板管理类中元祖对页面的修饰渲染


from django.contrib import admin
from django.contrib.admin import ModelAdmin

from .models import Student

# Register your models here.


# 创建一个管理模型的类
class Student_admin(ModelAdmin):
    # 数据模型的展示形式
    list_display = ('name','age','score','hobby','birthday')

    # 搜索框搜索查找
    search_fields = ('name','age')

    # 通过条件过滤查找 (过滤器)
    list_filter = ('age','hobby')

    # 每一页显示几条数据
    list_per_page = 3

    # 页面最多显示多少条数据
    list_max_show_all = 5


# 注册数据模型
'''
    管理员对站点的管理
    register 第一个参数: 将数据库表通过类的形式添加到站点
            第二个参数: 管理模型类(继承ModelAdmin)  类中定义数据怎么排版

            如果没有第二个参数则默认django内部的模型管理类
            该类list_display = '__str__'

'''
admin.site.register(Student,Student_admin)







这里写图片描述


案例(一) 创建一个图书管理页面

0.创建管理员站点账号密码
(venv) F:\PythonWorkPlace\demo1>python manage.py createsuperuser

Username (leave blank to use 'administrator'): admin_name

Email address: 123456@qq.com

Password:

Password (again):

Superuser created successfully.


(venv) F:\PythonWorkPlace\demo1>

汉化

修改设置   汉化   settings.py

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

USE_I18N = True

USE_L10N = True

USE_TZ = True
1. models.py 设置数据库表类

from django.db import models

# Create your models here.

class Book(models.Model):
    name = models.CharField(max_length=32)
    price = models.FloatField()
    author = models.CharField(max_length=32)
    addr = models.CharField(max_length=32)



进行数据迁移

python manage.py makemigrations
python manage.py migrate

2.创建模型管理类
from django.contrib import admin
from django.contrib.admin import ModelAdmin, AdminSite

from .models import Student

from .models import Book

# 图书模型管理类

class Book_admin(ModelAdmin):
    list_display = ('name','price','author','addr')
    list_per_page = 3
    list_filter = ('price',)


# 注册模型管理类
admin.site.register(Book,Book_admin)



3. 打开浏览器访问管理员路径对后台数据进行操作

这里写图片描述



这里写图片描述



这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值