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连接mysql数据库示例(做增删改操作)
Dec 31 Python
TensorFlow saver指定变量的存取
Mar 10 Python
python操作excel的包(openpyxl、xlsxwriter)
Jun 11 Python
Flask框架各种常见装饰器示例
Jul 17 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
Aug 08 Python
python3.6、opencv安装环境搭建过程(图文教程)
Nov 05 Python
python字符串的拼接方法总结
Nov 18 Python
matplotlib.pyplot画图并导出保存的实例
Dec 07 Python
使用keras2.0 将Merge层改为函数式
May 23 Python
Python selenium 加载并保存QQ群成员,去除其群主、管理员信息的示例代码
May 28 Python
解决Django transaction进行事务管理踩过的坑
Apr 24 Python
Python中如何处理常见报错
Jan 18 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
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
2007/03/06 PHP
php实现的Captcha验证码类实例
2014/09/22 PHP
Yii中使用PHPExcel导出Excel的方法
2014/12/26 PHP
PHP生成plist数据的方法
2015/06/16 PHP
完美解决在ThinkPHP控制器中命名空间的问题
2017/05/05 PHP
php intval函数用法总结
2019/04/14 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
2019/10/22 PHP
js判断字符长度以及中英文数字等
2013/12/31 Javascript
jQuery大于号(>)选择器的作用解释
2015/01/13 Javascript
分享10个原生JavaScript技巧
2015/04/20 Javascript
使用JavaScript实现旋转的彩圈特效
2015/06/23 Javascript
JavaScript中Number对象的toFixed() 方法详解
2016/09/02 Javascript
jQuery特殊符号转义的实现
2016/11/30 Javascript
less简单入门(CSS 预处理语言)
2017/03/08 Javascript
Angular2使用Guard和Resolve进行验证和权限控制
2017/04/24 Javascript
jQuery查找dom的几种方法效率详解
2017/05/17 jQuery
three.js实现3D模型展示的示例代码
2017/12/31 Javascript
JS实现使用POST方式发送请求
2019/08/30 Javascript
react PropTypes校验传递的值操作示例
2020/04/28 Javascript
[02:14]2016国际邀请赛中国区预选赛Ehome晋级之路
2016/07/01 DOTA
[02:27]2018DOTA2亚洲邀请赛赛前采访-OpTic
2018/04/03 DOTA
详解Python的Django框架中的通用视图
2015/05/04 Python
python中range()与xrange()用法分析
2016/09/21 Python
Apache,wsgi,django 程序部署配置方法详解
2019/07/01 Python
OpenCV3.0+Python3.6实现特定颜色的物体追踪
2019/07/23 Python
Django--权限Permissions的例子
2019/08/28 Python
python字典排序的方法
2019/10/12 Python
python连接mongodb数据库操作数据示例
2020/11/30 Python
CSS3 translate导致字体模糊的实例代码
2019/08/30 HTML / CSS
彪马西班牙官网:PUMA西班牙
2019/06/18 全球购物
Python中pass语句的作用是什么
2016/06/01 面试题
工程造价与管理专业应届生求职信
2013/11/23 职场文书
学校运动会开幕演讲稿
2014/01/04 职场文书
带病坚持工作事迹
2014/05/03 职场文书
群众路线学习心得体会范文
2014/11/05 职场文书
vue实力踩坑之push当前页无效
2022/04/10 Vue.js