1、32 字节:
如果中文utf8 可以存10个汉字(一个汉字3个字节)。
数字、英文 占一个字节。

2、把字节弄成定制名
verbose_name='中文'

3、数据库的配置:
settiins里配置:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'crm',
        'USER': 'root',
        'PASSWORD': None,
        'HOST': '127.0.0.1',
        'PORT': '3306',

init里配置

import pymysql
pymysql.install_as_MySQLdb()

3、django自带的User
生成了user后就能直接使用{{request.user}}拿到用户名

from django.contrib.auth.models import User
class UserProfile(models.Model):
    '''账号表'''
    user=models.OneToOneField(User,on_delete=models.CASCADE)
    name=models.CharField(max_length=32)
    roles=models.ManyToManyField('Role',blank=True)

    def __str__(self):
        return self.name

获得models定义的verbose_name_plural:admin_class.model._meta.verbose_name_plural
通过表名得到:app名字:admin_class.model.._meta.app_label
通过表名得到类名:admin_class.model.._meta.model_name
类._meta.get_field(column) 得到column的字段对象

field_obj.choices 判断是否有choices字段,.choices得到的是‘(1,未报名)’之类的数据,无,得到个()
field_obj.get_choices() 不仅能拿到choices还是拿到外键的value

get_**_display:得到choice的value的值

get_internal_type() :得到他的类型
type(column_data).name == 'datetime': 判断他得类型

time.png

得到当前路径:request.path
得到前路径并修改已有部分:request.path.replace('/add/','/')

%s拼接另外 的方法format

 column_data = "<a href='{request_path}{obj_id}/change/'>{data}</a>".format(request_path=request.path,
                                                                                       obj_id=obj.id,
                                                                                       data=column_data)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容