peewee 字段属性help_text的支持问题
至少在__version__ = '2.6.0'的时候,给字段添加help_text的时候,在数据库的ddl语句里面是没有comment的。
看了下源码,顺藤摸瓜,最终定位到了字段(Field类)的__ddl__函数, 源码这里。
如下:
def __ddl__(self, column_type):
"""Return a list of Node instances that defines the column."""
ddl = [self.as_entity(), self.__ddl_column__(column_type)]
if not self.null:
ddl.append(SQL('NOT NULL'))
if self.primary_key:
ddl.append(SQL('PRIMARY KEY'))
if self.sequence:
ddl.append(SQL("DEFAULT NEXTVAL('%s')" % self.sequence))
if self.constraints:
ddl.extend(self.constraints)
return ddl
ok,已经确定help_text没有真正实现。
很自然的想到,改一改,重新编译安装。看看官方文档,支持的数据库类型有: sqllite, mysql, postgresql
也就是说,建表时定义comment,至少要支持这三种数据库。
mysql建表时定义comment如下:
create table test(id int(11) comment 'test comment');
postgresql似乎无法在建表时定义字段的帮助信息,看这里。
sqllite不想看咯。
顺便一提,oracle是没有办法在建表的时候给字段添加注释的,参考这里。
因此,最多只能照顾到mysql。不想在这个层次折腾了。用sql(alter table xxx modify column column_definition comment '我的注释')写又要参照python代码里具体模型的定义,吐血中。
peewee 字段属性help_text的支持问题的更多相关文章
- Django之Models进阶操作(字段属性)
		字段属性详细介绍 一.字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列, ... 
- 1.4.2 solr字段类型--(1.4.2.7)字段属性使用案例
		1.4.2 solr字段类型 (1.4.2.1) 字段类型定义和字段类型属性. (1.4.2.2) solr附带的字段类型 (1.4.2.3) 使用货币和汇率 (1.4.2.4) 使用Dates(日期 ... 
- Django_ORM_字段属性
		Django_ORM_字段属性 常用字段 AutoField int自增列,必填参 primary_key=True 默认会自动创建一个列名为id的列 IntegerField 一个整数类型,范围在 ... 
- odoo字段属性
		以下为可用的非关联字段类型以及其对应的位置参数: Char(string)是一个单行文本,唯一位置参数是string字段标签. Text(string)是一个多行文本,唯一位置参数是string字段标 ... 
- 实例级别和类级别的static、构造函数、字段属性的简单介绍
		using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 实例级别 ... 
- Java操作属性文件,支持新增或更新多个属性
		Java操作属性文件.支持新增或更新多个属性 一.更新或新增单个属性的方法 /** * 写入properties信息 * @param filePath 绝对路径(包含文件名称和后缀名) * @par ... 
- mysql学习(五)-字段属性
		字段属性: unsigned: 无符号类型,只能修饰数值类型: create table if not exists t1(id int unsigned); zerofill:前端填0 //只能修饰 ... 
- MySQL (三)-- 字段属性、索引、关系、范式、逆规范化
		1 字段属性 主键.唯一键和自增长. 1.1 主键 主键:primary key,一张表中只能有一个字段可以使用对应的键,用来唯一的约束该字段里面的数据,不能重复. 一张表只能有最多一个主键. 1.1 ... 
- ASP.NET Core教程【三】实体字段属性、链接标签、并发数据异常、文件上传及读取
		前文索引:ASP.NET Core教程[二]从保存数据看Razor Page的特有属性与服务端验证ASP.NET Core教程[一]关于Razor Page的知识 实体字段属性 再来看看我们的实体类 ... 
随机推荐
- Envelope Letter
			http://www.thefullwiki.org/More_C%2B%2B_Idioms/Envelope_Letter http://www.smallmemory.com/almanac/Co ... 
- yourphp点击刷新验证码
			加入css <script type="text/javascript" src="./Public/Js/my.js"></script&g ... 
- Google
			1. Google Play: Google Play是谷歌官方的的应用市场, Google Play 服务通常会在 Android 装置上自动更新. http://baike.baidu.com/l ... 
- Winform添加Label
			Info from : http://www.csharpwin.com/csharpspace/6253r7952.shtml 本例子主要是介绍如何在 C#开发WinForm中加入一个组件,如果你想 ... 
- git命令之git tag 给当前分支打标签
			git tag - 标签相关操作 发表于 2011年06月29日 由 机器猫 标签可以针对某一时间点的版本做标记,常用于版本发布. 列出标签 $ git tag # 在控制台打印出当前仓库的所有标签$ ... 
- String、StringBuffer与StringBuilder之间区别[全屏看文]
			String.StringBuffer与StringBuilder之间区别[全屏看文] 最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,S ... 
- oracle中的连接查询与合并查询总结
			连接查询: 连接查询是指基于多张表或视图的查询.使用连接查询时,应指定有效的查询条件,不然可能会导致生成笛卡尔积.如现有部门表dept,员工表emp,以下查询因查询条件无效,而产生笛卡尔积: (各 ... 
- Git命令家底儿及Git数据通信原理详解
			http://geek.csdn.net/news/detail/72807?utm_source=tuicool&utm_medium=referral 
- 浏览器兼容性之Css篇
			本文与上一篇随笔<浏览器兼容性之Javascript篇>有一定关联,下来我会继续不断总结,旨在解决浏览器兼容性,对遇到类似问题的同仁有所帮助,如有更多解决浏览器兼容性的案例还望大家分享一起 ... 
- PHP基础之 string 字符串函数
			/*=================常用字符串处理函数================== ltrim(); //去掉字符串左边的空格 rtrim(); //去掉字符串 ... 
