Django自带的后台管理是Django明显特色之一,可以让我们快速便捷管理数据。后台管理可以在各个app的admin.py文件中进行控制

#创建超级用户

python manage.py createsuperuser

注意密码需要8位,数字和字母组合

存储在auth_user表中

一、       基本设置

 

1、应用注册

若要把app应用显示在后台管理中,需要在admin.py中注册。这个注册有两种方式,我比较喜欢用装饰器的方式。

先看看普通注册方法。打开admin.py文件,如下代码:

1

2

3

4

5

6

7

8

9

from django.contrib import admin

from blog.models import Blog

#Blog模型的管理器

class BlogAdmin(admin.ModelAdmin):

list_display=('id', 'caption', 'author', 'publish_time')

#在admin中注册绑定

admin.site.register(Blog, BlogAdmin)

  上面方法是将管理器和注册语句分开。有时容易忘记写注册语句,或者模型很多,不容易对应。

还有一种方式是用装饰器,该方法是Django1.7的版本新增的功能:

1

2

3

4

5

6

7

from django.contrib import admin

from blog.models import Blog

#Blog模型的管理器

@admin.register(Blog)

class BlogAdmin(admin.ModelAdmin):

list_display=('id', 'caption', 'author', 'publish_time')

  该方式比较方便明显,推荐用这种方式。

2、admin界面汉化

默认admin后台管理界面是英文的,对英语盲来说用起来不方便。可以在settings.py中设置:

  1. LANGUAGE_CODE = 'zh-CN'
  2. TIME_ZONE = 'Asia/Shanghai'

1.8版本之后的language code设置不同:

  1. LANGUAGE_CODE = 'zh-hans'
  2. TIME_ZONE = 'Asia/Shanghai'

admin.py

from django.contrib import admin

from supermarket.models import Product

@admin.register(Product)

class ProductAdmin(admin.ModelAdmin):

list_display=('id', 'name', 'price')

#list_per_page设置每页显示多少条记录,默认是100条

list_per_page = 50

#ordering设置默认排序字段,负号表示降序排序

ordering = ('-created_time',)

#list_editable 设置默认可编辑字段,在列表里就可以编辑

list_editable = ['title', 'user']

#设置哪些字段可以点击进入编辑界面

list_display_links = ('id', 'title')

#设置查找字段

search_fields=['title']

js原生语法获取checkbox值

var _items = [];

var items = document.getElementsByName("itemch_trend”);

for(var i=0;i<items.length;i++) {

if (items[i].checked){

_items.push(items[i].value);

}

}

控制全选或者反选

<input type="checkbox" onclick="checkAll(this, 'NewMainVideoCheckbox1')">

function checkAll(e, name) {

var items = document.getElementsByName(name);

for (var i = 0; i < items.length; i++) {

items[i].checked = e.checked;  或者使用true/false

}

}

python3 eval方法

eval(source[, globals[, locals]])

作用:

将字符串str当成有效的表达式来求值并返回计算结果。参数:source:一个Python表达式或函数compile()返回的代码对象;globals:可选。必须是dictionary;locals:可选。任意map对象。

Django 创建超级用户的更多相关文章

  1. django创建超级用户

    终端输入 python3 manage.py createsuperuser 按照提示进行操作即可 不输入用户名会给你默认一个用户名,输入密码是在原处不动的,其实已经在输入了. 创建超级用户是为了能够 ...

  2. Django创建超级用户出现错误

    如果运行python manage.py createsuperuser出现一大堆错误代码 解决方案: 1.检查settings.py中的DATABASE配置确定正确性 2.执行python mana ...

  3. Django之创建超级用户

    本文链接来自:https://blog.csdn.net/HuaCode/article/details/79721673 首选创建一个新用户,用来登录Django管理网站,进入manage.py目录 ...

  4. django 创建管理员用户

    7.2 create 创建管理员用户: python manage.py run server python manage.py createsuperuser password :123456789 ...

  5. 工作小记[csv文件、admin中filed与list_display区别、ModuleNotFoundError: No module named'xxx'、django创建admin用户]

    CSV-Comma Separated Values,CSV文件可以直接用Excel表格打开,如果用文本打开属性之间用逗号隔开,Python有直接操作CSV文件的函数. fileds字段控制“修改添加 ...

  6. DJANGO增加超级用户

    from django.contrib.auth.models import User user=User.objects.create_superuser('name','emailname@dem ...

  7. Django忘记超级用户密码||账号

    第一步:运行django shell python3 manage.py shell 第二步:重设密码 >>> from django.contrib.auth.models imp ...

  8. django忘记超级用户密码的解决方法

    用Django shell: 1 python manage.py shell 然后获取你的用户名,并且重设密码: 1 2 3 4 from django.contrib.auth.models im ...

  9. Django 创建超级管理员失败

    django.db.utils.DataError: (1406, "Data too long for column 'gender' at row 1") 解决方案 在执行mi ...

随机推荐

  1. 集合之TreeMap(含JDK1.8源码分析)

    一.前言 前面所说的hashMap和linkedHashMap都不具备统计的功能,或者说它们的统计性能的时间复杂度都不是很好,要想对两者进行统计,需要遍历所有的entry,时间复杂度比较高,此时,我们 ...

  2. 莫烦theano学习自修第七天【回归结果可视化】

    1.代码实现 from __future__ import print_function import theano import theano.tensor as T import numpy as ...

  3. python functools.wraps functools.partial实例解析

    一:python functools.wraps 实例 1. 未使用wraps的实例 #!/usr/bin/env python # coding:utf-8 def logged(func): de ...

  4. 魔术方法之__call与__callStatic方法

    <?php class human{ private function t(){ } /** * 魔术方法__call * * @param string $method 获得方法名 * @pa ...

  5. ADO工具类

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data; ...

  6. c++ string去除首尾 空格、\n、\r、\t

    string s = " test "; size_t n = s.find_last_not_of(" \r\n\t"); if (n != string:: ...

  7. DeepLearning训练方法

    1.BN层训练技巧 缩小输入尺寸,这样可以提高batchsize的大小,在BN层适应了该数据集后,固定住BN层参数,放大输入尺寸继续训练 2.语义分割中解决网络输出尺寸与原尺寸的gap方法(如 1/8 ...

  8. 【NLP】大白话讲解word2vec到底在做些什么

    转载自:http://blog.csdn.net/mylove0414/article/details/61616617 词向量 word2vec也叫word embeddings,中文名“词向量”, ...

  9. Subway POJ - 2502 最短路

    题意:给出地铁线  起点和 终点  坐地铁速度为v2  走路为v1 求起点到终点的最短距离  (答案需要四舍五入这里坑了好久) 拿给出的地铁站点 和起点终点建边即可  然后跑个迪杰斯特拉 #inclu ...

  10. Sudoku POJ - 3076

    Sudoku Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 5769   Accepted: 2684 Descripti ...