Django之choices选项和富文本编辑器的使用详解


Posted in Python onApril 01, 2020

项目准备

1.创建数据库

create database choices_test default charset utf8;

2.创建一个名为 choices_test 的Django项目;

3.创建应用app01;

项目结构如下所示

Django之choices选项和富文本编辑器的使用详解

4.配置数据库;

DATABASES = {
 'default': {
 'ENGINE': 'django.db.backends.mysql',
 'NAME': 'choices_test',
 'USER': 'root',
 'PASSWORD': 'root',
 'HOST': 'localhost',
 'PORT': '3306',
 }
}

5.__init__.py

import pymysql

pymysql.install_as_MySQLdb()

choices选项的使用

在模型类中使用choices选项

1.编写Goods模型类

from django.db import models

class Goods(models.Model):
 STATUS_CHOICES = (
 (0, '下架'),
 (1, '上架'),
 )
 ststus = models.SmallIntegerField(choices=STATUS_CHOICES, default=1, verbose_name="商品上架下架")

 class Meta:
 db_table = "goods" # 指定创建表名使表名为goods
 verbose_name = "商品"
 verbose_name_plural = verbose_name # 和上面一句结合使用,在后台管理时显示表名为"商品"

verbose_name作用

verbose_name:设置在admin中显示的名称,并且默认会后面加个s,表示复数;

verbose_name_plural = verbose_name; --->设置在admin显示的不加s;

2.去admin.py文件注册Goods模型类

from django.contrib import admin
from app01.models import Goods
admin.site.register(Goods)

3.数据表迁移

python manage.py makemigrations

python manage.py migrate

4.配置后台管理

配置时区

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

创建超级管理员

python manage.py createsuperuser
user:admin
password:admin123

5.启动项目

登录后台管理

如下页面

Django之choices选项和富文本编辑器的使用详解

choices选项效果图

Django之choices选项和富文本编辑器的使用详解

富文本编辑器

富文本编辑器准备

1.安装编辑器包

pip install django-tinymce

2.注册tinymce应用

INSTALLED_APPS = [
 'tinymce',
]

3.在settings文件中添加tinymce配置

# 编辑器相关配置
TINYMCE_DEFAULT_CONFIG = {
 'theme': 'advanced',
 'width': 600,
 'height': 400,
}

4.配置tinymce路由

from django.conf.urls import url, include

urlpatterns = [
 url(r'^tinymce/', include('tinymce.urls')),
]

模型类中使用编辑器

1.编写模型类代码

from tinymce.models import HTMLField


class Goods(models.Model):
 """商品测试模型类"""
 STATUS_CHOICES = (
 (0, '下架'),
 (1, '上架'),
 )
 ststus = models.SmallIntegerField(choices=STATUS_CHOICES, default=1, verbose_name="商品上架下架")
 # null=True 允许数据库为空,blank=True 允许后台输入时为空
 detail = HTMLField(null=True, blank=True, verbose_name="商品详情")

 class Meta:
 db_table = "goods" # 指定创建表名使表名为goods
 verbose_name = "商品"
 verbose_name_plural = verbose_name # 和上面一句结合使用,在后台管理时显示表名为"商品"

2.数据表迁移

python manage.py makemigrations

python manage.py migrate

3.进入后台管理,增加商品

至此,我们可以在后台管理中看见如下页面

Django之choices选项和富文本编辑器的使用详解

即富文本编辑器在后台中使用成功。

以上这篇Django之choices选项和富文本编辑器的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中return语句用法实例分析
Aug 04 Python
Python实现字典依据value排序
Feb 24 Python
Python中list初始化方法示例
Sep 18 Python
wxpython实现图书管理系统
Mar 12 Python
python实现多层感知器MLP(基于双月数据集)
Jan 18 Python
对python3中, print横向输出的方法详解
Jan 28 Python
Python实现Selenium自动化Page模式
Jul 14 Python
Python符号计算之实现函数极限的方法
Jul 15 Python
python3.7将代码打包成exe程序并添加图标的方法
Oct 11 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
Feb 12 Python
Python高并发解决方案实现过程详解
Jul 31 Python
Python如何在单元测试中给对象打补丁
Aug 03 Python
Python AutoCAD 系统设置的实现方法
Apr 01 #Python
django实现模型字段动态choice的操作
Apr 01 #Python
Python气泡提示与标签的实现
Apr 01 #Python
django 多数据库及分库实现方式
Apr 01 #Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
Apr 01 #Python
Django更新models数据库结构步骤
Apr 01 #Python
pycharm工具连接mysql数据库失败问题
Apr 01 #Python
You might like
回首过去10年中最搞笑的10部动漫,哪一部让你节操尽碎?
2020/03/03 日漫
弄了个检测传输的参数是否为数字的Function
2006/12/06 PHP
php中关于长度计算容易混淆的问题分析
2016/05/27 PHP
php中pcntl_fork创建子进程的方法实例
2019/03/14 PHP
基于jquery的模态div层弹出效果
2010/08/21 Javascript
jQuery模仿京东/天猫商品左侧分类导航菜单效果
2016/06/29 Javascript
jQuery实现的省市县三级联动菜单效果完整实例
2016/08/01 Javascript
常用原生js自定义函数总结
2016/11/20 Javascript
Vue中的数据监听和数据交互案例解析
2017/07/12 Javascript
vue.js如何更改默认端口号8080为指定端口的方法
2017/07/14 Javascript
基于 Vue 的树形选择组件的示例代码
2017/08/18 Javascript
浅谈jquery fullpage 插件增加头部和版权的方法
2018/03/20 jQuery
浅谈Webpack 是如何加载模块的
2018/05/24 Javascript
JavaScript中 ES6变量的结构赋值
2018/07/10 Javascript
js实现时分秒倒计时
2019/12/03 Javascript
操作Windows注册表的简单的Python程序制作教程
2015/04/07 Python
使用Python压缩和解压缩zip文件的教程
2015/05/06 Python
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
彻底理解Python中的yield关键字
2019/04/01 Python
python实现定时压缩指定文件夹发送邮件
2020/12/22 Python
在Python中使用MongoEngine操作数据库教程实例
2019/12/03 Python
在Pytorch中计算卷积方法的区别详解(conv2d的区别)
2020/01/03 Python
django-xadmin根据当前登录用户动态设置表单字段默认值方式
2020/03/13 Python
浅谈Keras中shuffle和validation_split的顺序
2020/06/19 Python
Python读取二进制文件代码方法解析
2020/06/22 Python
法国足球商店:Footcenter
2019/07/06 全球购物
如何现实servlet的单线程模式
2014/08/05 面试题
工商局所长四风自我剖析及整改措施
2014/10/26 职场文书
私用公车造成事故检讨书
2014/11/16 职场文书
2014年服务员个人工作总结
2014/12/23 职场文书
2015年人民调解工作总结
2015/05/18 职场文书
2015暑假社会调查报告
2015/07/13 职场文书
医院保洁员管理制度
2015/08/05 职场文书
教师旷工检讨书
2015/08/15 职场文书
聊一聊Redis与MySQL双写一致性如何保证
2021/06/26 Redis
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
2022/04/13 Python